Beruflich Dokumente
Kultur Dokumente
WESTECH CONTACT:
WESTECH
REVISIONS
0
REV
HE58
BY
BA83
CHKD
7/29/2013
DATE
TABLE OF CONTENTS
Cover Page
Table of Contents
Controls Description
Thickener Control Panel
Electrical Parts List.............................................................................................................................................................
Electrical Drawings ............................................................................................................................................................
Manufacturer User Manuals ..........................................................................................................................................
Power Supply ......................................................................................................................................................
Ethernet Switch .................................................................................................................................................
Programmable Logic Controller ...............................................................................................................
HMI...........................................................................................................................................................................
CONTROLS DESCRIPTION
Control Description
A thickening clarifier receives untreated water, where heavier particles settle to the bottom of the clarifier
tank and are raked to the center. As the heavier particles accumulate, a bed of material builds from the
bottom of the clarifier tank. This bed helps to attract new particles entering the clarifier. Bed height is
controlled and maintained for optimum performance.
Press here to access Windows CE.
As the bed builds, it becomes increasingly difficult for the rake to move through the bed. The rake can be
lifted or lowered through the bed for maximum efficiency, depending on the torque being experienced on the
rake shaft. The lift controls can be accessed by pressing the Lift Controls button.
Control Description
The rake can be started and stopped using the rake controls.
The Settings button opens the instrument set point and monitoring utilities.
Control Description
System instruments can be scaled using the instrument utilities screen.
25000
EU MAX
20000
15000
10000
EU MIN
5000
0
-10 0
10 20 30 40 50 60 70 80 90 100 110
RAW MIN
+
+ 1
RAW MAX
Control Description
The alarm list can be accessed by pressing the Alarms button. The up and down arrows are used to scroll
through the list. Once an alarm is highlighted, it can be acknowledged by pressing the Acknowledge button.
Alarms remain on the list until they have been cleared and acknowledged.
Acknowledge Button
Time can be changed by accessing the Windows CE screen and changing the time like any other
computer.
Control Description
FOR:
ELECTRICAL DRAWINGS
POWER SUPPLIES
https://www.phoenixcontact.com/us/produkte/2866310
Product description
TRIO POWER is the DIN-rail-mountable power supply unit with basic functions. With an output voltage of 5 V DC, 12 V DC, 24 V DC, and 48 V DC and
1- and 3-phase versions with 60 W or 960 W, it is particularly suited for use in series production in mechanical engineering. The wide-range input and
international certification package allow worldwide implementation.
The high MTBF of 500,000 h stands for high supply reliability. The devices can be connected in parallel to increase the capacity and redundancy.
The clear LED signaling and the device connection with double terminal block for plus and minus for fast potential distribution are further advantages
of this device series. A third minus terminal block simplifies the grounding on the secondary side. All power supply units are idle-proof and short-circuitproof and provide a regulated and adjustable output voltage.
Product Features
Use the third negative terminal block as a grounding terminal block and minimize installation costs
Rugged design with metal housing and wide temperature range from -25 to +70C
Maximum operational reliability thanks to high MTBF (mean time between failures) of more than 500,000 hours and high dielectric strength of up to
300 V AC
Compensation of voltage drops by means of output voltage that can be adjusted on the front
1 PCE
GTIN
Custom tariff number
85044082
Country of origin
CHINA
Technical data
Input data
Nominal input voltage range
https://www.phoenixcontact.com/us/produkte/2866310
300 V AC
AC frequency range
45 Hz ... 65 Hz
Current consumption
Current consumption
< 15 A
Input fuse
0.72
Type of protection
Protective circuit/component
Varistor
Output data
Nominal output voltage
24 V DC 1%
Output current
Derating
55 C ... 70 C (2.5%/K)
Connection in parallel
Connection in series
Yes
Unlimited
Current limitation
Control deviation
Control deviation
Control deviation
Residual ripple
< 20 mVPP
< 30 mVPP
1.1 W
18 W
General data
Width
40 mm
Height
130 mm
Depth
115 mm
Net weight
0.6 kg
Green LED
Efficiency
4 kV AC (type test)
2 kV AC (routine test)
04.06.2013Page2/5
https://www.phoenixcontact.com/us/produkte/2866310
IP20
Protection class
I, with PE connection
-40 C ... 85 C
95 % (at 25 C, no condensation)
Mounting position
Assembly instructions
Electromagnetic compatibility
Noise immunity
EN 61000-6-2:2005
EN 60204
Shipbuilding approval
EN 60950-1 (SELV)
EN 60204 (PELV)
DIN 57100-410
EN 61000-3-2
UL approvals
UL approvals
III
Screw connection
0.2 mm
2.5 mm
0.2 mm
2.5 mm
24
14
Stripping length
9 mm
Screw thread
M2,5
04.06.2013Page3/5
https://www.phoenixcontact.com/us/produkte/2866310
Screw connection
0.2 mm
2.5 mm
0.2 mm
2.5 mm
24
14
Stripping length
9 mm
Signaling
Status display
Classifications
ETIM
ETIM 2.0
EC001039
ETIM 3.0
EC001039
ETIM 4.0
EC000599
ETIM 5.0
EC002540
UNSPSC
UNSPSC 11
39121004
UNSPSC 12.01
39121004
UNSPSC 13.2
39121004
UNSPSC 6.01
30211502
UNSPSC 7.0901
39121004
eCl@ss
eCl@ss 4.0
27040702
eCl@ss 4.1
27040702
eCl@ss 5.0
27049002
eCl@ss 5.1
27049002
eCl@ss 6.0
27049002
eCl@ss 7.0
27049002
eCl@ss 8.0
27049002
Drawings
04.06.2013Page4/5
https://www.phoenixcontact.com/us/produkte/2866310
Dimensioned drawing
115
130
PE
04.06.2013Page5/5
ETHERNET SWITCH
https://www.phoenixcontact.com/us/products/2891152
Ethernet switch, 5 TP RJ45 ports, automatic detection of data transmission speed of 10 or 100 Mbps (RJ45),
autocrossing function
Product Features
M
Local diagnostic indicators with LEDs
The switch also offers cable locking and port blocking
RJ45 ports support a transmission speed of 10/100 Mbps; fiber optic ports support 100 Mbps
QoS-prioritized (Quality of Service) messages
DC and AC power supplies
Data flow control can be disabled to locate network device errors
1 PCE
4500 PCE
GTIN
Custom tariff number
85176200
Country of origin
TAIWAN
Technical data
Dimensions
Width
30 mm
Height
120 mm
Depth
70 mm
Interfaces
09.07.2013Page1/4
https://www.phoenixcontact.com/us/products/2891152
Ethernet (RJ45)
No. of ports
5 (RJ45 ports)
Connection method
RJ45
Transmission physics
Transmission speed
10/100 MBit/s
Function
Basic functions
100 m
Supply voltage
Supply voltage
24 V DC
Residual ripple
9 V DC ... 30.2 V DC
90 mA (at 24 V DC)
General
Mounting type
DIN rail
Type AX
Block design
Weight
265 g
Degree of protection
IP20
0 C ... 60 C
-20 C ... 70 C
66 kPa ... 108 kPa (up to 3500 m above mean sea level)
Housing material
Aluminum
Noise emission
EN 61000-6-4
Noise immunity
EN 61000-6-2:2005
IEC 61000-6.2
09.07.2013Page2/4
https://www.phoenixcontact.com/us/products/2891152
Test result
Criterion B
Test standard
Test result
Criterion A
Test standard
Test result
Criterion B
Test standard
Test result
Criterion B
Test standard
Test result
Criterion A
Test standard
Test result
Criterion A
Test standard
Test result
Criterion A
Classifications
eCl@ss
eCl@ss 4.0
27250501
eCl@ss 4.1
27250501
eCl@ss 5.0
27250501
eCl@ss 5.1
27250501
eCl@ss 6.0
19170106
eCl@ss 7.0
19170106
ETIM
ETIM 2.0
EC000734
ETIM 3.0
EC000734
ETIM 4.0
EC000734
ETIM 5.0
EC000734
UNSPSC
UNSPSC 6.01
43172015
UNSPSC 7.0901
43201404
UNSPSC 11
43172015
UNSPSC 12.01
43201410
UNSPSC 13.2
43201410
09.07.2013Page3/4
https://www.phoenixcontact.com/us/products/2891152
09.07.2013Page4/4
SIMATIC
S7
S7-1200 Programmable controller
System Manual
04/2012
A5E02486680-06
___________________
Preface
1
___________________
Product overview
STEP 7 programming
2
___________________
software
3
___________________
Installation
4
___________________
PLC concepts
5
___________________
Device configuration
6
___________________
Programming concepts
7
___________________
Basic instructions
8
___________________
Extended instructions
9
___________________
Technology instructions
10
___________________
Communication
11
___________________
Web server
12
___________________
Communication processor
Teleservice communication
13
___________________
(SMTP email)
14
___________________
Online and diagnostic tools
A
___________________
Technical specifications
B
___________________
Calculating a power budget
C
___________________
Order numbers
Legal information
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 relevant 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, 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.
Trademarks
All names identified by are registered trademarks of 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 NRNBERG
GERMANY
Preface
Purpose of the manual
The S7-1200 series is a line of programmable logic controllers (PLCs) that can control a
variety of automation applications. Compact design, low cost, and a powerful instruction set
make the S7-1200 a perfect solution for controlling a wide variety of applications. The S71200 models and the Windows-based programming tool give you the flexibility you need to
solve your automation problems.
This manual provides information about installing and programming the S7-1200 PLCs and
is designed for engineers, programmers, installers, and electricians who have a general
knowledge of programmable logic controllers.
Preface
Table of contents
Preface ...................................................................................................................................................... 3
1
1.2
1.3
S7-1200 modules.........................................................................................................................24
1.4
1.5
2.2
2.3
2.3.1
2.3.2
2.3.3
2.3.4
2.3.5
2.3.6
2.3.7
2.3.8
2.3.9
2.3.10
2.3.11
2.3.12
Installation ............................................................................................................................................... 43
3.1
3.2
3.3
3.3.1
3.3.2
3.3.3
3.3.4
3.3.5
3.3.6
3.3.7
3.3.8
3.3.8.1
3.3.8.2
3.3.8.3
3.3.8.4
Table of contents
3.4
4
Wiring guidelines......................................................................................................................... 61
4.2
4.2.1
4.3
4.4
4.4.1
4.4.2
4.4.3
4.4.4
4.4.5
4.4.6
4.4.7
4.4.8
4.4.9
4.4.9.1
4.4.9.2
4.4.9.3
4.4.10
4.4.11
4.5
4.5.1
4.5.2
4.5.3
4.5.4
4.5.5
4.6
5.2
5.3
5.4
5.5
Table of contents
5.6
5.6.1
5.6.2
5.6.3
5.6.4
5.6.4.1
5.6.4.2
5.6.4.3
5.6.4.4
5.6.5
5.6.6
5.6.7
5.6.8
6
6.2
6.3
6.3.1
6.3.2
6.3.3
6.3.4
6.4
6.5
6.5.1
6.5.2
6.5.3
6.5.4
Programming language..............................................................................................................154
Ladder logic (LAD) .....................................................................................................................155
Function Block Diagram (FBD) ..................................................................................................156
SCL ............................................................................................................................................156
EN and ENO for LAD, FBD and SCL.........................................................................................163
6.6
6.6.1
6.6.2
6.6.3
Protection ...................................................................................................................................164
Access protection for the CPU...................................................................................................164
Know-how protection .................................................................................................................165
Copy protection ..........................................................................................................................166
6.7
6.8
6.8.1
6.8.2
6.9
6.9.1
6.9.2
6.9.3
6.9.4
Bit logic.......................................................................................................................................175
Bit logic contacts and coils.........................................................................................................175
Set and reset instructions ..........................................................................................................178
Positive and negative edge instructions ....................................................................................180
7.2
Timers ........................................................................................................................................182
Table of contents
7.3
Counters.................................................................................................................................... 190
7.4
7.4.1
7.4.2
7.4.3
Compare.................................................................................................................................... 196
Compare.................................................................................................................................... 196
In-range and Out-of-range instructions ..................................................................................... 197
OK and Not OK instructions ...................................................................................................... 197
7.5
7.5.1
7.5.2
7.5.3
7.5.4
7.5.5
7.5.6
7.5.7
7.5.8
7.5.9
7.6
7.6.1
7.6.2
7.6.3
7.6.4
Move.......................................................................................................................................... 207
Move and block move instructions............................................................................................ 207
FieldRead and FieldWrite instructions ...................................................................................... 209
Fill instructions .......................................................................................................................... 211
Swap instruction........................................................................................................................ 212
7.7
7.7.1
7.7.2
7.7.3
7.7.4
7.7.5
Convert...................................................................................................................................... 213
CONV instruction ...................................................................................................................... 213
Conversion instructions for SCL ............................................................................................... 214
Round and truncate instructions ............................................................................................... 217
Ceiling and floor instructions ..................................................................................................... 218
Scale and normalize instructions .............................................................................................. 219
7.8
7.8.1
7.8.2
7.8.3
7.8.4
7.8.5
7.8.6
7.8.7
7.8.8
7.8.9
7.8.10
7.8.11
7.8.12
7.8.13
7.8.14
7.8.15
7.8.16
7.8.17
7.9
7.9.1
7.9.2
7.9.3
7.9.4
Table of contents
7.10
7.10.1
7.10.2
8
8.2
8.2.1
8.2.2
8.2.3
8.2.3.1
8.2.3.2
8.2.3.3
8.2.4
8.2.4.1
8.2.4.2
8.2.4.3
8.2.4.4
8.2.4.5
8.2.4.6
8.2.4.7
8.3
8.3.1
8.3.2
8.3.3
8.3.4
8.3.5
8.3.6
8.4
8.4.1
8.4.2
8.4.2.1
8.4.2.2
8.4.3
8.4.4
Interrupts ....................................................................................................................................288
Attach and detach instructions...................................................................................................288
Cyclic interrupts..........................................................................................................................291
SET_CINT (Set cyclic interrupt) .................................................................................................291
QRY_CINT (Query cyclic interrupt)............................................................................................293
Time delay interrupts .................................................................................................................294
Asynchronous event interrupts ..................................................................................................296
8.5
8.5.1
8.5.2
8.5.3
8.5.4
8.5.5
8.5.6
8.6
8.6.1
8.6.2
8.6.3
Pulse ..........................................................................................................................................309
CTRL_PWM instruction..............................................................................................................309
Operation of the pulse outputs...................................................................................................311
Configuring a pulse channel for PWM .......................................................................................312
Table of contents
8.7
8.7.1
8.7.2
8.7.2.1
8.7.2.2
8.7.2.3
8.7.2.4
8.7.2.5
8.7.3
8.7.4
8.7.5
8.8
8.8.1
8.9
9.2
9.2.1
9.2.2
9.2.3
9.2.4
9.2.5
9.2.6
9.2.7
9.3
9.3.1
9.3.2
9.3.3
9.3.3.1
9.3.3.2
9.3.3.3
9.3.3.4
9.3.3.5
9.3.3.6
9.3.3.7
9.3.3.8
9.3.3.9
9.3.3.10
9.3.4
9.3.4.1
9.3.4.2
9.3.4.3
9.3.4.4
9.3.5
9.3.6
9.3.6.1
9.3.6.2
10
Table of contents
9.3.6.3
10
Communication...................................................................................................................................... 423
10.1
10.2
10.2.1
10.2.2
10.2.2.1
10.2.2.2
10.2.2.3
10.2.2.4
10.2.2.5
10.2.2.6
10.2.2.7
10.2.3
10.2.3.1
10.2.3.2
10.2.3.3
10.2.3.4
10.2.4
10.2.4.1
10.2.5
10.2.5.1
10.2.5.2
10.2.5.3
10.2.6
10.2.7
10.2.8
10.2.9
10.2.10
PROFINET .................................................................................................................................425
Local/Partner connection ...........................................................................................................425
Open user communication .........................................................................................................427
Connection IDs for the PROFINET instructions.........................................................................427
Protocols ....................................................................................................................................430
Ad hoc mode ..............................................................................................................................431
TCP and ISO on TCP ................................................................................................................431
UDP............................................................................................................................................446
T_CONFIG .................................................................................................................................451
Common parameters for instructions.........................................................................................458
Communication with a programming device..............................................................................460
Establishing the hardware communications connection............................................................460
Configuring the devices .............................................................................................................461
Assigning Internet Protocol (IP) addresses ...............................................................................462
Testing your PROFINET network ..............................................................................................462
HMI-to-PLC communication.......................................................................................................462
Configuring logical network connections between two devices.................................................463
PLC-to-PLC communication ......................................................................................................464
Configuring logical network connections between two devices.................................................465
Configuring the Local/Partner connection path between two devices .......................................465
Configuring transmit (send) and receive parameters.................................................................465
Configuring a CPU and PROFINET IO device ..........................................................................468
Diagnostics.................................................................................................................................471
Distributed I/O Instructions.........................................................................................................472
Diagnostic instructions ...............................................................................................................472
Diagnostic events for distributed I/O ..........................................................................................472
10.3
10.3.1
10.3.1.1
10.3.1.2
10.3.1.3
10.3.1.4
10.3.2
10.3.2.1
10.3.2.2
10.3.2.3
10.3.3
10.3.4
10.3.5
PROFIBUS.................................................................................................................................472
Communications modules PROFIBUS ......................................................................................474
Connecting to PROFIBUS .........................................................................................................474
Communications services of the PROFIBUS CMs ....................................................................474
Other properties of the PROFIBUS CMs ...................................................................................476
Configuration examples for PROFIBUS ....................................................................................477
Configuring a DP master and slave device................................................................................478
Adding the CM 1243-5 (DP master) module and a DP slave ....................................................478
Configuring logical network connections between two PROFIBUS devices .............................478
Assigning PROFIBUS addresses to the CM 1243-5 module and DP slave..............................479
Distributed I/O Instructions.........................................................................................................480
Diagnostic instructions ...............................................................................................................480
Diagnostic events for distributed................................................................................................481
10.4
10.4.1
10.4.1.1
10.4.1.2
10.4.1.3
10.4.1.4
10.4.2
10.4.2.1
AS-i ............................................................................................................................................481
Configuring an AS-i master and slave device............................................................................481
Adding the AS-i master CM 1243-2 and AS-i slave...................................................................482
Configuring logical network connections between two AS-i devices .........................................482
Configuring the properties of the AS-i master CM1243-2..........................................................483
Assigning an AS-i address to an AS-i slave ..............................................................................483
Exchanging data between the user program and AS-i slaves...................................................484
STEP 7 basic configuration........................................................................................................484
11
Table of contents
S7 communication..................................................................................................................... 489
GET and PUT instructions ........................................................................................................ 489
Creating an S7 connection........................................................................................................ 493
Configuring the Local/Partner connection path between two devices ...................................... 493
GET/PUT connection parameter assignment ........................................................................... 494
Connection parameters............................................................................................................. 494
Configuring a CPU-to-CPU S7 connection ............................................................................... 497
11.2
11.2.1
11.2.2
11.2.3
11.2.4
11.2.5
11.2.6
11.2.7
11.2.8
11.2.9
11.2.10
11.2.11
12
Table of contents
12
11.3.8.7
11.3.9
11.3.9.1
11.3.9.2
11.3.9.3
11.3.10
11.4
11.4.1
11.4.2
11.4.3
11.4.4
Constraints .................................................................................................................................558
Features restricted when JavaScript is disabled .......................................................................558
Features restricted when cookies are not allowed.....................................................................560
Importing the Siemens security certificate .................................................................................560
Importing CSV format data logs to non-USA/UK versions of Microsoft Excel...........................561
12.2
12.3
12.3.1
12.3.1.1
12.3.1.2
12.3.1.3
12.3.1.4
12.3.1.5
12.3.1.6
12.3.1.7
12.3.1.8
12.3.1.9
12.3.2
12.3.2.1
12.3.3
12.3.3.1
12.3.3.2
12.3.4
12.3.4.1
12.3.5
12.3.5.1
12.3.5.2
12.3.5.3
12.3.5.4
12.3.5.5
12.4
12.4.1
12.4.2
12.4.3
12.4.4
12.4.5
12.4.6
12.4.7
12.5
12.5.1
12.5.2
13
Table of contents
13
12.5.2.1
12.5.2.2
12.5.2.3
12.5.2.4
12.5.2.5
12.5.2.6
12.5.2.7
12.5.3
12.5.3.1
12.5.3.2
12.5.3.3
12.5.3.4
12.5.3.5
12.6
12.6.1
12.6.2
12.6.3
12.6.4
12.6.5
14
14.2
14.3
14.4
14.5
14.6
14.7
14.8
14.9
14.10
Monitoring and modifying values in the CPU ............................................................................ 682
14.10.1 Going online to monitor the values in the CPU ......................................................................... 683
14.10.2 Displaying status in the program editor..................................................................................... 684
14.10.3 Capturing the online values of a DB to reset the start values................................................... 684
14.10.4 Using a watch table to monitor and modify values in the CPU ................................................. 685
14.10.4.1 Using a trigger when monitoring or modifying PLC tags ..................................................... 686
14.10.4.2 Enabling outputs in STOP mode.......................................................................................... 687
14.10.5 Forcing values in the CPU ........................................................................................................ 688
14.10.5.1 Using the force table ............................................................................................................ 688
14.10.5.2 Operation of the Force function ........................................................................................... 689
14.11
14.11.1
14.11.2
14.11.3
14
Table of contents
14.11.4 Downloading a single selected block with a compile error in another block..............................694
14.11.5 System reaction if the download process fails...........................................................................695
14.11.6 Downloading the program in RUN mode ...................................................................................696
A
A.2
A.2.1
A.2.2
A.2.3
A.2.4
A.2.4.1
A.2.4.2
A.2.5
A.3
A.3.1
A.3.2
A.3.3
A.3.4
A.3.4.1
A.3.4.2
A.3.5
A.4
A.4.1
A.4.2
A.4.3
A.4.4
A.4.4.1
A.4.4.2
A.4.5
A.5
A.5.1
A.5.2
A.5.3
A.5.4
A.5.4.1
A.5.4.2
A.5.4.3
A.5.4.4
A.5.5
A.6
A.6.1
A.6.2
A.6.3
A.6.4
A.6.5
A.7
A.7.1
A.7.2
15
Table of contents
A.7.3
A.7.4
A.7.5
A.7.6
A.7.7
A.7.8
A.8
A.8.1
A.8.1.1
A.8.1.2
A.8.2
A.8.2.1
A.9
A.9.1
A.9.2
A.9.3
A.9.4
A.10
A.10.1
A.10.2
A.10.3
A.10.3.1
A.10.3.2
A.10.3.3
A.10.3.4
A.10.3.5
A.10.4
A.10.4.1
A.10.4.2
A.10.5
A.10.5.1
A.10.5.2
A.11
A.12
A.12.1
A.12.1.1
A.12.1.2
A.12.2
A.12.2.1
A.12.3
A.12.3.1
A.12.3.2
A.12.4
A.12.4.1
A.12.4.2
A.12.4.3
A.13
A.14
16
Table of contents
A.15
Input simulators..........................................................................................................................826
A.16
A.17
A.17.1
A.17.2
Companion products..................................................................................................................828
PM 1207 power module .............................................................................................................828
CSM 1277 compact switch module ...........................................................................................828
C.2
Signal modules (SMs), signal boards (SBs) and battery boards (BB).......................................833
C.3
Communication ..........................................................................................................................834
C.4
Other modules............................................................................................................................835
C.5
C.6
C.7
C.8
Programming software...............................................................................................................837
C.9
Documentation ...........................................................................................................................837
Index...................................................................................................................................................... 839
17
Table of contents
18
Product overview
1.1
Power connector
Memory card slot under top door
Several security features help protect access to both the CPU and the control program:
Every CPU provides password protection (Page 164) that allows you to configure access
to the CPU functions.
You can use "know-how protection" (Page 165) to hide the code within a specific block.
You can use copy protection (Page 166) to bind your program to a specific memory card
or CPU.
19
Product overview
1.1 Introducing the S7-1200 PLC
Table 1- 1
Feature
CPU 1211C
CPU 1212C
CPU 1214C
CPU 1215C
90 x 100 x 75
90 x 100 x 75
110 x 100 x 75
130 x 100 x 75
Work
30 Kbytes
50 Kbytes
75 Kbytes
100 Kbytes
Load
1 Mbyte
1 Mbyte
4 Mbytes
4 Mbytes
Retentive
10 Kbytes
10 Kbytes
10 Kbytes
10 Kbytes
Local on-board
I/O
Digital
6 inputs/4 outputs
8 inputs/6 outputs
14 inputs/10 outputs
14 inputs/10 outputs
Analog
2 inputs
2 inputs
2 inputs
2 inputs / 2 outputs
Process image
size
Inputs (I)
1024 bytes
1024 bytes
1024 bytes
1024 bytes
Outputs (Q)
1024 bytes
1024 bytes
1024 bytes
1024 bytes
4096 bytes
4096 bytes
8192 bytes
8192 bytes
None
High-speed
counters
3 built-in I/O, 5
with SB
4 built-in I/O, 6
with SB
3 at 100 kHz
3 at 100 kHz
1 at 30 kHz
3 at 100 kHz
3 at 30 kHz
3 at 100 kHz
3 at 30 kHz
3 at 80 kHz
3 at 20 kHz
3 at 80 kHz
3 at 20 kHz
User memory
Total
Single phase
SB: 2 at 30 kHz
Quadrature phase 3 at 80 kHz
Pulse
outputs1
SB: 2 at 30 kHz
SB: 2 at 20 kHz
3 at 80 kHz
1 at 20 kHz
SB: 2 at 20 kHz
Memory card
PROFINET
2.3 s/instruction
0.08 s/instruction
2 Ethernet
communication ports
For CPU models with relay outputs, you must install a digital signal board (SB) to use the pulse outputs.
Each CPU provides dedicated HMI connections to support up to 3 HMI devices. The total
number of HMI is affected by the types of HMI panels in your configuration. For example,
you could have up to three SIMATIC Basic panels connected to your CPU, or you could
have up to two SIMATIC Comfort panels with one additional Basic panel.
The different CPU models provide a diversity of features and capabilities that help you create
effective solutions for your varied applications. For detailed information about a specific
CPU, see the technical specifications (Page 699).
20
Product overview
1.1 Introducing the S7-1200 PLC
Table 1- 2
Element
Blocks
OBs
Timers
Counters
Description
Type
Size
Quantity
Nesting depth
16 from the program cycle or start up OB; 4 from the time delay
interrupt, time-of-day interrupt, cyclic interrupt, hardware interrupt,
time error interrupt, or diagnostic error interrupt OB
Monitoring
Program cycle
Startup
1: OB 80
1: OB 82
Type
IEC
Quantity
Storage
Type
IEC
Quantity
Storage
Time-delay and cyclic interrupts use the same resources in the CPU. You can have only a total of 4 of these interrupts
(time-delay plus cyclic interrupts). You cannot have 4 time-delay interrupts and 4 cyclic interrupts.
21
Product overview
1.2 Expansion capability of the CPU
1.2
Table 1- 3
Type
Input only
digital SB
4 x 24VDC In,
200 kHz
4 x 24VDC Out,
200 kHz
4 x 5VDC In,
200 kHz
4 x 5VDC Out,
200 kHz
8 x 24VDC In
digital SM
16 x 24VDC In
Output only
Combination In/Out
8 x 24VDC Out
8 x Relay Out
8 x Relay Out
(Changeover)
16 x 24VDC Out
16 x Relay Out
22
Product overview
1.2 Expansion capability of the CPU
Table 1- 4
Type
Input only
analog SB
1 x 12 bit Analog In
1 x 16 bit RTD
1 x 16 bit Thermocouple
analog SM
Combination In/Out
1 x Analog Out
4 x Analog In
2 x Analog Out
4 x Analog In x 16 bit
4 x Analog Out
8 x Analog In
Thermocouple:
Table 1- 5
Output only
4 x 16 bit TC
8 x 16 bit TC
RTD:
4 x 16 bit RTD
8 x 16 bit RTD
Communication interfaces
Module
Type
Description
RS232
Full-duplex
RS422/485
Full-duplex (RS422)
Half-duplex (RS485)
PROFIBUS Master
DPV1
PROFIBUS Slave
DPV1
AS-Interface
Modem connectivity
GPRS
RS485
Half-duplex
TeleService
TS Adapter IE Basic1
Connection to CPU
TS Adapter GSM
GSM/GPRS
TS Adapter Modem
Modem
TS Adapter ISDN
ISDN
TS Adapter RS232
RS232
The TS Adapter allows you to connect various communication interfaces to the PROFINET port of the CPU. You install
the TS Adapter on the left side of the CPU and connect the TS Adapter modular (up to 3) onto the TS Adapter.
Table 1- 6
Other boards
Module
Description
Battery board
Plugs into expansion board interface on front of CPU. Provides long term
backup of realtime clock
23
Product overview
1.3 S7-1200 modules
1.3
Table 1- 7
S7-1200 modules
S7-1200 expansion modules
Type of module
The CPU supports one plug-in
expansion board:
Description
Digital I/O
Analog I/O
Status LEDs on
the SB
Removable user
wiring connector
Status LEDs
Bus connector
Removable user
wiring connector
Status LEDs
Communication
connector
24
Product overview
1.4 New features
1.4
New features
The following features are new in this release:
A standard Web server page for performing a CPU firmware update (Page 519)
The ability to use three PROFIBUS DP CM 1243-5 master modules or three AS-i CM
1243-2 master modules
Note
To use three AS-i modules as masters, you must update the firmware of the AS-i
modules.
25
Product overview
1.5 Basic HMI panels
1.5
KP 300 Basic PN
Description
Technical data
250 tags
50 process screens
200 alarms
25 curves
40 KB recipe memory
87 mm x 31 mm (3.6")
Resolution: 240 x 80
250 tags
50 process screens
200 alarms
25 curves
40 KB recipe memory
500 tags
50 process screens
200 alarms
25 curves
40 KB recipe memory
26
Product overview
1.5 Basic HMI panels
Description
Technical data
500 tags
50 process screens
200 alarms
25 curves
40 KB recipe memory
500 tags
50 process screens
200 alarms
25 curves
TP 1500 Basic PN
27
Product overview
1.5 Basic HMI panels
28
STEP 7 provides a user-friendly environment to develop, edit, and monitor the logic needed
to control your application, including the tools for managing and configuring all of the devices
in your project, such as controllers and HMI devices. To help you find the information you
need, STEP 7 provides an extensive online help system.
STEP 7 provides standard programming languages for convenience and efficiency in
developing the control program for your application.
LAD (ladder logic) is a graphical programming language. The representation is based on
circuit diagrams (Page 155).
FBD (Function Block Diagram) is a programming language that is based on the graphical
logic symbols used in Boolean algebra (Page 156).
SCL (structured control language) is a text-based, high-level programming language.
When you create a code block, you select the programming language to be used by that
block. Your user program can utilize code blocks created in any or all of the programming
languages.
Note
STEP 7 is the programming and configuration software component of the TIA Portal. The
TIA Portal, in addition to STEP 7, also includes WinCC for designing and executing runtime
process visualization, and includes online help for WinCC as well as STEP 7.
2.1
System requirements
To install the STEP 7 software on a PC running Windows XP or Windows 7 operating
system, you must log in with Administrator privileges.
Table 2- 1
System requirements
Hardware/software
Requirements
Processor type
RAM
1 GB
Operating systems
29
2.2
Hardware/software
Requirements
Graphics card
32 MB RAM
24-bit color depth
Screen resolution
1024 x 768
Network
Optical drive
DVD-ROM
action
Project view
With all of these components in one place, you have easy access to every aspect of your
project. For example, the inspector window shows the properties and information for the
object that you have selected in the work area. As you select different objects, the inspector
window displays the properties that you can configure. The inspector window includes tabs
that allow you to see diagnostic information and other messages.
S7-1200 Programmable controller
30
2.3
Easy-to-use tools
2.3.1
To create your program, you drag instructions from the task card
onto a network.
31
2.3.2
32
2.3.3
33
For this example, enter the following equation for scaling a raw analog value. (The "In" and
"Out" designations correspond to the parameters of the Calculate instruction.)
Out value = ((Out high - Out low) / (In high - In low)) * (In value - In low) + Out low
Out
Where:
(Out)
In value
(in1)
In high
(in2)
In low
(in3)
Out high
(in4)
Out low
(in5)
In the "Edit Calculate" box, enter the equation with the parameter names:
OUT = ((in4 - in5) / (in2 - in3)) * (in1 - in3) + in5
34
2.3.4
2.3.5
Expandable instructions
Some of the more complex instructions are expandable, displaying only the key inputs and
outputs. To display the inputs and outputs, click the arrow at the bottom of the instruction.
35
2.3.6
2.3.7
36
2.3.8
To toggle between the editors that have been opened, click the icons in the editor bar.
2.3.9
37
The color of the RUN/STOP indicator shows the current operating mode of the CPU. Yellow
indicates STOP mode, and green indicates RUN mode.
Refer to Operating Modes of the CPU in the S7-1200 System Manual (Page 69) for
configuring the default operating mode on power up.
38
2.3.10
39
2.3.11
STEP 7 reconfigures the network connections, but does not remove the disconnected device
from the project. While the network connection is deleted, the interface addresses are not
changed.
When you download the new network connections, the CPU must be set to STOP mode.
To reconnect the device, simply create a new network connection to the port of the device.
40
2.3.12
41
42
Installation
3.1
Separate the S7-1200 devices from heat, high voltage, and electrical noise
As a general rule for laying out the devices of your system, always separate the devices that
generate high voltage and high electrical noise from the low-voltage, logic-type devices such
as the S7-1200.
When configuring the layout of the S7-1200 inside your panel, consider the heat-generating
devices and locate the electronic-type devices in the cooler areas of your cabinet. Reducing
the exposure to a high-temperature environment will extend the operating life of any
electronic device.
Consider also the routing of the wiring for the devices in the panel. Avoid placing low-voltage
signal wires and communications cables in the same tray with AC power wiring and highenergy, rapidly-switched DC wiring.
43
Installation
3.2 Power budget
When planning your layout for the S7-1200 system, allow enough clearance for the wiring
and communications cable connections.
PP
PP
PP
PP
3.2
Side view
Horizontal installation
Vertical installation
Clearance area
Power budget
Your CPU has an internal power supply that provides power for the CPU, the signal
modules, signal board and communication modules and for other 24 VDC user power
requirements.
Refer to the technical specifications (Page 699) for information about the 5 VDC logic budget
supplied by your CPU and the 5 VDC power requirements of the signal modules, signal
boards, and communication modules. Refer to the "Calculating a power budget" (Page 829)
to determine how much power (or current) the CPU can provide for your configuration.
The CPU provides a 24 VDC sensor supply that can supply 24 VDC for input points, for relay
coil power on the signal modules, or for other requirements. If your 24 VDC power
requirements exceed the budget of the sensor supply, then you must add an external
24 VDC power supply to your system. Refer to the technical specifications (Page 699) for the
24 VDC sensor supply power budget for your particular CPU.
Note
The CM 1243-5 (PROFIBUS master module) requires power from the 24 VDC sensor supply
of the CPU.
44
Installation
3.2 Power budget
If you require an external 24 VDC power supply, ensure that the power supply is not
connected in parallel with the sensor supply of the CPU. For improved electrical noise
protection, it is recommended that the commons (M) of the different power supplies be
connected.
WARNING
Connecting an external 24 VDC power supply in parallel with the 24 VDC sensor supply
can result in a conflict between the two supplies as each seeks to establish its own
preferred output voltage level.
The result of this conflict can be shortened lifetime or immediate failure of one or both
power supplies, with consequent unpredictable operation of the PLC system. Unpredictable
operation could result in death, severe personal injury and/or property damage.
The DC sensor supply and any external power supply should provide power to different
points.
Some of the 24 VDC power input ports in the S7-1200 system are interconnected, with a
common logic circuit connecting multiple M terminals. For example, the following circuits are
interconnected when designated as "not isolated" in the data sheets: the 24 VDC power
supply of the CPU, the power input for the relay coil of an SM, or the power supply for a nonisolated analog input. All non-isolated M terminals must connect to the same external
reference potential.
WARNING
Connecting non-isolated M terminals to different reference potentials will cause unintended
current flows that may cause damage or unpredictable operation in the PLC and any
connected equipment.
Failure to comply with these guidelines could cause damage or unpredictable operation
which could result in death or severe personal injury and/or property damage.
Always ensure that all non-isolated M terminals in an S7-1200 system are connected to the
same reference potential.
45
Installation
3.3 Installation and removal procedures
3.3
3.3.1
&38&&38&&38&
%
%
&38&
Table 3- 1
S7-1200 Devices
CPU
Width A (mm)
Width B (mm)
Width C (mm)
90
45
--
CPU 1214C
110
55
--
46
Installation
3.3 Installation and removal procedures
S7-1200 Devices
Signal modules
Width A (mm)
Width B (mm)
Width C (mm)
CPU 1215C
130
65 (top)
Bottom:
C1: 32.5
C2: 65
C3: 32.5
45
22.5
--
70
22.5
--
Analog 16 point
70
35
--
30
15
--
60 1
15
--
RTD 8 point
Communication
interfaces
Because you must install a TS Adapter modular with the TS Adapter, the total width ("width A") is 60 mm.
Each CPU, SM, CM, and CP supports mounting on either a DIN rail or on a panel. Use the
DIN rail clips on the module to secure the device on the rail. These clips also snap into an
extended position to provide screw mounting positions to mount the unit directly on a panel.
The interior dimension of the hole for the DIN clips on the device is 4.3 mm.
A 25 mm thermal zone must be provided above and below the unit for free air circulation.
2
1
4
3
1
Panel installation
Clip in extended position for panel mounting
47
Installation
3.3 Installation and removal procedures
Before you install or remove any electrical device, ensure that the power to that equipment
has been turned off. Also, ensure that the power to any related equipment has been turned
off.
WARNING
Installation or removal of S7-1200 or related equipment with the power applied could cause
electric shock or unexpected operation of equipment.
Failure to disable all power to the S7-1200 and related equipment during installation or
removal procedures could result in death, severe personal injury and/or property damage
due to electric shock or unexpected equipment operation.
Always follow appropriate safety precautions and ensure that power to the S7-1200 is
disabled before attempting to install or remove S7-1200 CPUs or related equipment.
Always ensure that whenever you replace or install an S7-1200 device you use the correct
module or equivalent device.
WARNING
Incorrect installation of an S7-1200 module may cause the program in the S7-1200 to
function unpredictably.
Failure to replace an S7-1200 device with the same model, orientation, or order could result
in death, severe personal injury and/or property damage due to unexpected equipment
operation.
Replace an S7-1200 device with the same model, and be sure to orient and position it
correctly.
WARNING
Do not disconnect equipment when a flammable or combustible atmosphere is present.
Disconnection of equipment when a flammable or combustible atmosphere is present may
cause a fire or explosion which could result in death, serious injury and/or property
damage.
CAUTION
Electrostatic discharge can damage the device or the receptacle on the CPU.
Make contact with a grounded conductive pad and/or wear a grounded wrist strap
whenever you handle the device.
48
Installation
3.3 Installation and removal procedures
3.3.2
49
Installation
3.3 Installation and removal procedures
Table 3- 2
Task
Table 3- 3
Task
Pull out the DIN rail clip to release the CPU from the
rail.
Rotate the CPU up and off the rail, and remove the
CPU from the system.
50
Installation
3.3 Installation and removal procedures
3.3.3
Table 3- 4
Task
Procedure
1. Ensure that the CPU and all S7-1200 equipment are disconnected
from electrical power.
2. Remove the top and bottom terminal block covers from the CPU.
3. Place a screwdriver into the slot on top of the CPU at the rear of the
cover.
4. Gently pry the cover up and remove it from the CPU.
5. Place the module straight down into its mounting position in the top
of the CPU.
6. Firmly press the module into position until it snaps into place.
7. Replace the terminal block covers.
Table 3- 5
Task
Procedure
1. Ensure that the CPU and all S7-1200 equipment are disconnected
from electrical power.
2. Remove the top and bottom terminal block covers from the CPU.
3. Place a screwdriver into the slot on top of the module.
4. Gently pry the module up to disengage it from the CPU.
5. Remove the module straight up from its mounting position in the top
of the CPU.
6. Replace the cover onto the CPU.
7. Replace the terminal block covers.
51
Installation
3.3 Installation and removal procedures
2. The BB 1297 is ready to be installed in the CPU. Follow the installation directions above
to install the BB 1297.
To replace the battery in the BB 1297:
1. Remove the BB 1297 from the CPU following the removal directions above.
2. Carefully remove the old battery using a small screwdriver. Push the battery out from
under the clip.
3. Install a new CR1025 replacement battery with the positive side of the battery on top and
the negative side next to the printed wiring board.
4. Re-install the BB 1297 battery board following the installation directions above.
3.3.4
Table 3- 6
Task
52
Installation
3.3 Installation and removal procedures
Table 3- 7
Removing an SM
Task
Procedure
You can remove any SM without removing the CPU or other SMs in place.
1. Ensure that the CPU and all S7-1200 equipment are disconnected from
electrical power.
2. Remove the I/O connectors and wiring from the SM (Page 55).
3. Retract the bus connector.
3.3.5
Table 3- 8
Installing a CM or CP
Task
Procedure
1. Ensure that the CPU and all S7-1200 equipment are
disconnected from electrical power.
2. Attach the CM to the CPU before installing the assembly
as a unit to the DIN rail or panel.
3. Remove the bus cover from the left side of the CPU:
Firmly press the units together until the posts snap into
place.
53
Installation
3.3 Installation and removal procedures
Table 3- 9
Removing a CM or CP
Task
Procedure
Remove the CPU and CM as a unit from the DIN rail or panel.
1. Ensure that the CPU and all S7-1200 equipment are disconnected from electrical
power.
2. Remove the I/O connectors and all wiring and cables from the CPU and CMs.
3. For DIN rail mounting, move the lower DIN rail clips on the CPU and CMs to the
extended position.
4. Remove the CPU and CMs from the DIN rail or panel.
5. Grasp the CPU and CMs firmly and pull apart.
CAUTION
Do not use a tool to separate the modules because this will damage the units.
54
Installation
3.3 Installation and removal procedures
3.3.6
Table 3- 10
Task
Procedure
Prepare the system for terminal block connector removal by removing the power from the
CPU and opening the cover above the connector.
1. Ensure that the CPU and all S7-1200 equipment are disconnected from electrical power.
2. Inspect the top of the connector and locate the slot for the tip of the screwdriver.
3. Insert a screwdriver into the slot.
4. Gently pry the top of the connector away from the CPU. The connector will release with a
snap.
5. Grasp the connector and remove it from the CPU.
Table 3- 11
Task
Procedure
Prepare the components for terminal block installation by removing power from the CPU and
opening the cover for connector.
1. Ensure that the CPU and all S7-1200 equipment are disconnected from electrical power.
2. Align the connector with the pins on the unit.
3. Align the wiring edge of the connector inside the rim of the connector base.
4. Press firmly down and rotate the connector until it snaps into place.
Check carefully to ensure that the connector is properly aligned and fully engaged.
55
Installation
3.3 Installation and removal procedures
3.3.7
Table 3- 12
Task
Table 3- 13
Task
56
Installation
3.3 Installation and removal procedures
Table 3- 14
Task
Procedure
1. Ensure that the CPU and all S7-1200 equipment are
disconnected from electrical power.
2. Unlock the connector:
3.3.8
TS (teleservice) adapter
3.3.8.1
57
Installation
3.3 Installation and removal procedures
CAUTION
The TS module can be damaged if you touch the contacts of the plug connector of the
TS module. Follow ESD guidelines in order to avoid damaging the TS module through
electrostatic discharge. Before connecting a TS module and TS Adapter, make sure that
both are in an idle state.
2
3
5
TS module
TS Adapter
Elements
CAUTION
Before connecting a TS module and TS adapter basic unit, ensure that the contact pins
are not bent. When connecting, ensure that the male connector and guide elements are
positioned correctly.
Only connect a TS module into the TS adapter. Do not force a connection of the TS adapter
to a different device, such as an S7-1200 CPU. Do not change the mechanical construction
of the connector, and do not remove or damage the guide elements.
3.3.8.2
58
Installation
3.3 Installation and removal procedures
Table 3- 15
Procedure
Task
TS Module GSM
SIM card
Note
Ensure that the SIM card tray is correctly oriented in the card tray. Otherwise, the SIM card
will not make connection with the module, and the eject button may not remove the card tray.
3.3.8.3
59
Installation
3.3 Installation and removal procedures
Table 3- 16
Task
Procedure
Installation:
WARNING
Before you remove power from the unit, disconnect the grounding of the TS Adapter by
removing the analog cable and Ethernet cable.
3.3.8.4
60
Installation
3.4 Wiring guidelines
The following illustration shows the TS Adapter from behind, with the attachment sliders
in both positions:
2
1
2
3.4
Attachment slider
Drill holes for wall mounting
Wiring guidelines
Proper grounding and wiring of all electrical equipment is important to help ensure the
optimum operation of your system and to provide additional electrical noise protection for
your application and the S7-1200. Refer to the technical specifications (Page 699) for the
S7-1200 wiring diagrams.
Prerequisites
Before you ground or install wiring to any electrical device, ensure that the power to that
equipment has been turned off. Also, ensure that the power to any related equipment has
been turned off.
61
Installation
3.4 Wiring guidelines
Ensure that you follow all applicable electrical codes when wiring the S7-1200 and related
equipment. Install and operate all equipment according to all applicable national and local
standards. Contact your local authorities to determine which codes and standards apply to
your specific case.
WARNING
Installation or wiring the S7-1200 or related equipment with power applied could cause
electric shock or unexpected operation of equipment. Failure to disable all power to the S71200 and related equipment during installation or removal procedures could result in death,
severe personal injury, and/or damage due to electric shock or unexpected equipment
operation.
Always follow appropriate safety precautions and ensure that power to the S7-1200 is
disabled before attempting to install or remove the S7-1200 or related equipment.
Always take safety into consideration as you design the grounding and wiring of your S71200 system. Electronic control devices, such as the S7-1200, can fail and can cause
unexpected operation of the equipment that is being controlled or monitored. For this reason,
you should implement safeguards that are independent of the S7-1200 to protect against
possible personal injury or equipment damage.
WARNING
Control devices can fail in an unsafe condition, resulting in unexpected operation of
controlled equipment. Such unexpected operations could result in death, severe personal
injury and/or property damage.
Use an emergency stop function, electromechanical overrides, or other redundant
safeguards that are independent of the S7-1200.
62
Installation
3.4 Wiring guidelines
To maintain the safe character of the S7-1200 low voltage circuits, external connections to
communications ports, analog circuits, and all 24 V nominal power supply and I/O circuits
must be powered from approved sources that meet the requirements of SELV, PELV, Class
2, Limited Voltage, or Limited Power according to various standards.
WARNING
Use of non-isolated or single insulation supplies to supply low voltage circuits from an AC
line can result in hazardous voltages appearing on circuits that are expected to be touch
safe, such as communications circuits and low voltage sensor wiring.
Such unexpected high voltages could cause electric shock resulting in death, severe
personal injury and/or property damage.
Only use high voltage to low voltage power converters that are approved as sources of
touch safe, limited voltage circuits.
63
Installation
3.4 Wiring guidelines
All S7-1200 modules have removable connectors for user wiring. To prevent loose
connections, ensure that the connector is seated securely and that the wire is installed
securely into the connector. To avoid damaging the connector, be careful that you do not
over-tighten the screws. The maximum torque for the CPU and SM connector screw is 0.56
N-m (5 inch-pounds). The maximum torque for the SB connector screw is 0.33 N-m (3 inchpounds).
To help prevent unwanted current flows in your installation, the S7-1200 provides isolation
boundaries at certain points. When you plan the wiring for your system, you should consider
these isolation boundaries. Refer to the technical specifications for the amount of isolation
provided and the location of the isolation boundaries. Do not depend on isolation boundaries
rated less than 1500 VAC as safety boundaries.
64
Installation
3.4 Wiring guidelines
Typical suppressor circuit for DC or relay outputs that switch DC inductive loads
Output point
Typical suppressor circuit for relay outputs that switch AC inductive loads
MOV
0.1 F
100 to 120
Output point
65
Installation
3.4 Wiring guidelines
66
PLC concepts
4.1
67
PLC concepts
4.1 Execution of the user program
Inserting or removing a module in the central rack under power (hot) is not supported.
Never insert or remove a module from the central rack when the CPU has power..
WARNING
Insertion or removal of a module (SM, SB, BB, CD, CM or CP) from the central rack
when the CPU has power could cause unpredictable behavior, resulting in damage to
equipment and/or injury to personnel.
Always ensure that power is removed from the CPU and central rack before inserting or
removing a module from the central rack.
You can insert or remove a SIMATIC memory card while the CPU is under power.
However, inserting or removing a memory card when the CPU is in RUN mode causes
the CPU to go to STOP mode.
CAUTION
Insertion or removal of a memory card when the CPU is in RUN mode causes the CPU
to go to STOP, which might result in in damage to the equipment or the process being
controlled.
Whenever you insert or remove a memory card, the CPU immediately goes to STOP
mode. Before inserting or removing a memory card, always ensure that the CPU is not
actively controlling a machine or process. Always install an emergency stop circuit for
your application or process.
If you insert or remove a module in a distributed I/O rack (PROFINET or PROFIBUS)
when the CPU is in RUN mode, the CPU generates an entry in the diagnostics buffer and
stays in RUN mode.
Under the default configuration, all local digital and analog I/O points are updated
synchronously with the scan cycle using an internal memory area called the process image.
The process image contains a snapshot of the physical inputs and outputs (the physical I/O
points on the CPU, signal board, and signal modules).
The CPU performs the following tasks:
The CPU writes the outputs from the process image output area to the physical outputs.
The CPU reads the physical inputs just prior to the execution of the user program and
stores the input values in the process image input area. This ensures that these values
remain consistent throughout the execution of the user instructions.
The CPU executes the logic of the user instructions and updates the output values in the
process image output area instead of writing to the actual physical outputs.
This process provides consistent logic through the execution of the user instructions for a
given cycle and prevents the flickering of physical output points that might change state
multiple times in the process image output area.
68
PLC concepts
4.1 Execution of the user program
You can specify whether digital and analog I/O points are to be automatically updated and
stored in the process image. If you insert a module in the device view, its data is located in
the process image of the CPU (default). The CPU handles the data exchange between the
module and the process image area automatically during the update of the process image.
To remove digital or analog points from the process-image automatic update, select the
appropriate device in Device configuration, view the Properties tab, expand if necessary to
locate the desired I/O points, and then select "IO addresses/HW identifier". Then change the
entry for "Process image:" from "Cyclic PI" to "---". To add the points back to the processimage automatic update, change this selection back to "Cyclic PI".
You can immediately read physical input values and immediately write physical output
values when an instruction executes. An immediate read accesses the current state of the
physical input and does not update the process image input area, regardless of whether the
point is configured to be stored in the process image. An immediate write to the physical
output updates both the process image output area (if the point is configured to be stored in
the process image) and the physical output point. Append the suffix ":P" to the I/O address if
you want the program to immediately access I/O data directly from the physical point instead
of using the process image.
The CPU supports distributed I/O for both PROFINET and PROFIBUS networks (Page 423).
4.1.1
69
PLC concepts
4.1 Execution of the user program
A memory reset clears all work memory, clears retentive and non-retentive memory areas,
and copies load memory to work memory. A memory reset does not clear the diagnostics
buffer or the permanently saved values of the IP address.
Note
When you download one or more DBs from STEP 7 V11 to an S7-1200 V2 CPU, the
retentive and non-retentive values of those DBs are set to their start values. The next
transition to RUN performs a warm restart, setting all non-retentive data to their start values
and setting all retentive data to their retained values.
When you download project elements (such as device configuration, code blocks or DBs)
from STEP 7 V10.5 to any S7-1200 CPU or from STEP 7 V11 to an S7-1200 V1 CPU (or a
V2 CPU that has been configured as a V1 CPU), the next transition to RUN mode resets all
of the DBs in the project to their start values.
You can configure the "startup after POWER ON" setting of the CPU. This configuration item
appears under the "Device configuration" for the CPU under "Startup". When power is
applied, the CPU performs a sequence of power-up diagnostic checks and system
initialization. During system initialization the CPU deletes all non-retentive bit memory and
resets all non-retentive DB contents to the initial values from load memory. The CPU retains
retentive bit memory and retentive DB contents and then enters the appropriate operating
mode. Certain detected errors prevent the CPU from entering the RUN mode. The CPU
supports the following configuration choices:
No restart (stay in STOP mode)
Warm restart - RUN
Warm restart - mode prior to POWER OFF
CAUTION
The CPU can enter STOP mode due to repairable faults, such as failure of a
replaceable signal module, or temporary faults, such as power line disturbance or erratic
power up event.
If the CPU has been configured to "Warm restart mode prior to POWER OFF", it will not
return to RUN mode when the fault is repaired or removed until it receives a new
command from STEP 7 to go to RUN. Without a new command, the STOP mode is
retained as the mode prior to POWER OFF.
CPUs that are intended to operate independently of a STEP 7 connection should
typically be configured to "Warm restart - RUN" so that the CPU can be returned to RUN
mode by a power cycle following the removal of fault conditions.
70
PLC concepts
4.1 Execution of the user program
You can change the current operating mode using the "STOP" or "RUN" commands from the
online tools of the programming software. You can also include a STP instruction in your
program to change the CPU to STOP mode. This allows you to stop the execution of your
program based on the program logic.
In STOP mode, the CPU handles any communication requests (as appropriate) and
performs self-diagnostics. The CPU does not execute the user program, and the
automatic updates of the process image do not occur.
You can download your project only when the CPU is in STOP mode.
In STARTUP and RUN modes, the CPU performs the tasks shown in the following figure.
&
'
STARTUP
A
RUN
STARTUP processing
Whenever the operating mode changes from STOP to RUN, the CPU clears the process
image inputs, initializes the process image outputs and processes the startup OBs. Any read
accesses to the process-image inputs by instructions in the startup OBs read zero rather
than the current physical input value. Therefore, to read the current state of a physical input
during the startup mode, you must perform an immediate read. The startup OBs and any
associated FCs and FBs are executed next. If more than one startup OB exists, each is
executed in order according to the OB number, with the lowest OB number executing first.
71
PLC concepts
4.1 Execution of the user program
Each startup OB includes startup information that helps you determine the validity of
retentive data and the time-of-day clock. You can program instructions inside the startup
OBs to examine these startup values and to take appropriate action. The following startup
locations are supported by the Startup OBs:
Table 4- 1
Input
Data Type
Description
LostRetentive
Bool
This bit is true if the retentive data storage areas have been lost
LostRTC
Bool
This bit is true if the time-of-day clock (Real time Clock) has been lost
The CPU also performs the following tasks during the startup processing.
Interrupts are queued but not processed during the startup phase
No cycle time monitoring is performed during the startup phase
Configuration changes to HSC (high-speed counter), PWM (pulse-width modulation), and
PtP (point-to-point communication) modules can be made in startup
Actual operation of HSC, PWM and point-to-point communication modules only occurs in
RUN
After the execution of the startup OBs finishes, the CPU goes to RUN mode and processes
the control tasks in a continuous scan cycle.
See also
Stop scan cycle instruction (Page 235)
CPU operator panel for the online CPU (Page 679)
4.1.2
72
PLC concepts
4.1 Execution of the user program
The system guarantees that the scan cycle will be completed in a time period called the
maximum cycle time; otherwise a time error event is generated.
Each scan cycle begins by retrieving the current values of the digital and analog outputs
from the process image and then writing them to the physical outputs of the CPU, SB,
and SM modules configured for automatic I/O update (default configuration). When a
physical output is accessed by an instruction, both the output process image and the
physical output itself are updated.
The scan cycle continues by reading the current values of the digital and analog inputs
from the CPU, SB, and SMs configured for automatic I/O update (default configuration),
and then writing these values to the process image. When a physical input is accessed
by an instruction, the value of the physical input is accessed by the instruction, but the
input process image is not updated.
After reading the inputs, the user program is executed from the first instruction through
the end instruction. This includes all the program cycle OBs plus all their associated FCs
and FBs. The program cycle OBs are executed in order according to the OB number with
the lowest OB number executing first.
Communications processing occurs periodically throughout the scan, possibly interrupting
user program execution.
Self-diagnostic checks include periodic checks of the system and the I/O module status
checks.
Interrupts can occur during any part of the scan cycle, and are event-driven. When an event
occurs, the CPU interrupts the scan cycle and calls the OB that was configured to process
that event. After the OB finishes processing the event, the CPU resumes execution of the
user program at the point of interruption.
4.1.3
73
PLC concepts
4.1 Execution of the user program
OBs control the following operations:
Program cycle OBs execute cyclically while the CPU is in RUN mode. The main block of
the program is a program cycle OB. This is where you place the instructions that control
your program and where you call additional user blocks. Multiple program cycle OBs are
allowed and are executed in numerical order. OB 1 is the default. Other program cycle
OBs must be identified as OB 200 or greater.
Startup OBs execute one time when the operating mode of the CPU changes from STOP
to RUN, including powering up in the RUN mode and in commanded STOP-to-RUN
transitions. After completion, the main "Program cycle" OB will begin executing. Multiple
startup OBs are allowed. OB 100 is the default. Others must be OB 200 or greater.
Cyclic interrupt OBs execute at a specified interval. A cyclic interrupt OB will interrupt
cyclic program execution at user defined intervals, such as every 2 seconds. You can
configure up to a total of 4 for both the time-delay and cyclic events at any given time,
with one OB allowed for each configured time-delay and cyclic event. The OB must be
OB 200 or greater.
Hardware interrupt OBs execute when the relevant hardware event occurs, including
rising and falling edges on built-in digital inputs and HSC events. A hardware interrupt OB
will interrupt normal cyclic program execution in reaction to a signal from a hardware
event. You define the events in the properties of the hardware configuration. One OB is
allowed for each configured hardware event. The OB must be OB 200 or greater.
A time error interrupt OB executes when either the maximum cycle time is exceeded or a
time error event occurs. The OB for processing the time error interrupt is OB 80. If
triggered, it executes, interrupting normal cyclic program execution or any other event
OB. The events that trigger the time error interrupt and the reaction of the CPU to those
events are described below:
Exceeding the maximum cycle time: You configure the maximum cycle time in the
properties of the CPU. If OB 80 does not exist, the reaction of the CPU for exceeding
the maximum time is to change to STOP.
Time errors: If OB 80 does not exist, the reaction of the CPU is to stay in RUN. Time
errors occur if the time of day event is missed or repeated, the queue overflows, or an
event OB (time delay event, time of day event, or cyclic interrupt) starts before the
CPU finishes the execution of the first.
The occurrence of either of these events generates a diagnostic buffer entry describing
the event. The diagnostic buffer entry is generated regardless of the existence of OB 80.
Diagnostic error interrupt OBs execute when a diagnostic error is detected and reported.
A diagnostic OB interrupts the normal cyclic program execution if a diagnostics-capable
module recognizes an error (if the diagnostic error interrupt has been enabled for the
module). OB 82 is the only OB number supported for the diagnostic error event. You can
include an STP instruction (put CPU in STOP mode) inside your OB 82 if you desire your
CPU to enter STOP mode upon receiving this type of error. If there is no diagnostic OB in
the program, the CPU ignores the error (stays in RUN).
74
PLC concepts
4.1 Execution of the user program
4.1.4
75
PLC concepts
4.1 Execution of the user program
The time and diagnostic error interrupt events are triggered when the CPU detects an error.
These events are at a higher priority class that the other interrupt events and can interrupt
the execution of the time delay, cyclic and hardware interrupt events. One interrupt OB can
be specified for each of the time error and diagnostic error interrupt events.
OB events
Event
OB number
Quantity allowed
Start event
Program cycle
OB 1, OB 200 to
OB 65535
Startup OB ends
OB 100, OB 200 to
OB 65535
1 startup event 1, 2
STOP-to-RUN transition
OB 200 to OB 65535
Up to 4 time events3
1 OB per event
Edges:
Startup
Time
Process
OB 200 to OB 65535
Up to 50 process
1 OB per event
events4
OB priority
1
For HSC:
CV=PV: 6 max.
76
PLC concepts
4.1 Execution of the user program
Event
Quantity allowed
Start event
Diagnostic error OB 82
OB number
Time error
OB 80
OB priority
9
26
The startup event and the program cycle event will never occur at the same time because the startup event will run to
completion before the program cycle event will be started (controlled by the operating system).
Only the diagnostic error event (OB 82) interrupts the startup event. All other events are queued to be processed after
the startup event has finished.
The CPU provides a total of 4 time events that are shared by the time-delay OBs and the cyclic OBs. The number of
time-delay and cyclic OBs in your user program cannot exceed 4.
You can have more than 50 process events if you use the DETACH and ATTACH instructions.
You can configure the CPU to stay in RUN if the maximum scan cycle time was exceeded or you can use the
RE_TRIGR instruction to reset the cycle time. However, the CPU goes to STOP mode the second time that the
maximum scan cycle time was exceeded in one scan cycle.
Interrupt latency
The interrupt event latency (the time from notification of the CPU that an event has occurred
until the CPU begins execution of the first instruction in the OB that services the event) is
approximately 175 sec, provided that a program cycle OB is the only event service routine
active at the time of the interrupt event.
77
PLC concepts
4.1 Execution of the user program
The requested OB cannot be started condition results if an OB is requested by a cyclic
interrupt, a time-delay interrupt, or a time-of-day interrupt, but the requested OB is already
being executed.
The queue overflow occurred condition results if the interrupts are occurring faster than they
can be processed. The number of pending (queued) events is limited using a different queue
for each event type. If an event occurs when the corresponding queue is full, a time error
event is generated.
All time error events trigger the execution of OB 80 if it exists. If an OB 80 is not included in
the user program, then the device configuration of the CPU determines the CPU reaction to
the time error:
The default configuration for time errors, such as starting a second cyclic interrupt before
the CPU has finished the execution of the first, is for the CPU to stay in RUN.
The default configuration for exceeding the maximum time is for the CPU to change to
STOP.
You can use the RE_TRIGR instruction to reset the maximum cycle time. However, if two
"maximum cycle time exceeded" conditions occur within the same program cycle without
resetting the cycle timer, then the CPU transitions to STOP, regardless of whether OB 80
exists. See the section on "Monitoring the cycle time in the S7-1200 System Manual"
(Page 80).
OB 80 includes startup information that helps you determine which event and OB generated
the time error. You can program instructions inside OB 80 to examine these startup values
and to take appropriate action.
Table 4- 3
Input
Data type
Description
fault_id
BYTE
csg_OBnr
OB_ANY
csg_prio
UINT
No time error interrupt OB 80 is present when you create a new project. If desired, you add a
time error interrupt OB 80 to your project by double-clicking "Add new block" under "Program
blocks" in the tree, then choose "Organization block", and then "Time error interrupt".
78
PLC concepts
4.1 Execution of the user program
Wire break
Short circuit
Diagnostic error events trigger the execution of OB 82 if it exists. If OB 82 does not exist,
then the CPU ignores the error. No diagnostic error interrupt OB 82 is present when you
create a new project. If desired, you add a diagnostic error interrupt OB 82 to your project by
double-clicking "Add new block" under "Program blocks" in the tree, then choose
"Organization block", and then "Diagnostic error interrupt".
Note
Diagnostic errors for multi-channel local analog devices (I/O, RTD, and Thermocouple)
The OB 82 diagnostic error interrupt can report only one channel's diagnostic error at a time.
If two channels of a multi-channel device have an error, then the second error only triggers
OB 82 under the following conditions: the first channel error clears, the execution of OB 82
triggered by the first error is complete, and the second error still exists.
OB 82 includes startup information that helps you determine whether the event is due to the
occurrence or removal of an error, and the device and channel which reported the error. You
can program instructions inside OB 82 to examine these startup values and to take
appropriate action.
Table 4- 4
Input
Data type
Description
IOstate
WORD
Bit 6 = 1 if an I/O access error has occurred. Refer to laddr for the
hardware identifier of the I/O with the access error. (Bit 6 = 0 if there
is no error.)
laddr
HW_ANY
channel
UINT
Channel number
multierror
BOOL
The laddr input contains the hardware identifier of the device or functional unit which returned the error. The hardware
identifier is assigned automatically when components are inserted in the device or network view and appears in the
Constants tab of PLC tags. A name is also assigned automatically for the hardware identifier. These entries in the
Constants tab of the PLC tags cannot be changed.
79
PLC concepts
4.1 Execution of the user program
4.1.5
80
PLC concepts
4.1 Execution of the user program
Table 4- 5
Cycle time
Range (ms)
time1
Default
1 to 6000
150 ms
Disabled
The maximum scan cycle time is always enabled. Configure a cycle time between 1 ms to 6000 ms. The default is 150
ms.
The fixed minimum scan cycle time is optional, and is disabled by default. If required, configure a cycle time between 1
ms and the maximum scan cycle time.
Communications load: You can configure a percentage of the time to be dedicated for
communication tasks.
For more information about the scan cycle, see "Monitoring the cycle time". (Page 80)
81
PLC concepts
4.1 Execution of the user program
4.1.6
CPU memory
Memory management
The CPU provides the following memory areas to store the user program, data, and
configuration:
Load memory is non-volatile storage for the user program, data and configuration. When
a project is downloaded to the CPU, it is first stored in the Load memory area. This area
is located either in a memory card (if present) or in the CPU. This non-volatile memory
area is maintained through a power loss. The memory card supports a larger storage
space than that built-in to the CPU.
Work memory is volatile storage for some elements of the user project while executing
the user program. The CPU copies some elements of the project from load memory into
work memory. This volatile area is lost when power is removed, and is restored by the
CPU when power is restored.
Retentive memory is non-volatile storage for a limited quantity of work memory values.
The retentive memory area is used to store the values of selected user memory locations
during power loss. When a power down or power loss occurs, the CPU restores these
retentive values upon power up.
To display the memory usage for the current project, right-click the CPU (or one of its blocks)
and select "Resources" from the context. To display the memory usage for the current CPU,
double-click "Online and diagnostics", expand "Diagnostics", and select "Memory".
82
PLC concepts
4.1 Execution of the user program
Retentive memory
Data loss after power failure can be avoided by marking certain data as retentive. The
following data can be configured to be retentive:
Bit memory(M): You can define the precise width of the memory for bit memory in the
PLC tag table or in the assignment list. Retentive bit memory always starts at MB0 and
runs consecutively up through a specified number of bytes. Specify this value from the
PLC tag table or in the assignment list by clicking the "Retain" toolbar icon. Enter the
number of M bytes to retain starting at MB0.
Tags of a function block (FB): If an FB was created with "Optimzed" selected, then the
interface editor for this FB includes a "Retain" column. In this column, you can select
either "Retentive", "Non-retentive", or "Set in IDB" individually for each tag. An instance
DB that was created when this FB is placed in the program editor shows this retain
column as well. You can only change the retentive state of a tag from within the instance
DB interface editor if you selected "Set in IDB" (Set in instance data block) in the Retain
selection for the tag in the optimized FB.
If an FB was created with "Standard - compatible with S7-300/400" selected, then the
interface editor for this FB does not include a "Retain" column. An instance DB created
when this FB is inserted in the program editor shows a "Retain" column which is available
for edit. In this case, selecting the "Retain" option for any tag results in all tags being
selected. Similarly, deselecting the option for any tag results in all tags being deselected.
For an FB that was configured to be "Standard - compatible with S7-300/400", you can
change the retentive state from within the instance DB editor, but all tags are set to the
same retentive state together.
After you create the FB, you cannot change the option for "Standard - compatible with
S7-300/400". You can only select this option when you create the FB. To determine
whether an existing FB was configured for "Optimized" or "Standard - compatible with S7300/400", right-click the FB in the Project tree, select "Properties", and then select
"Attributes". The check box "Optimized block access" when selected shows you whether
a block is optimized. Otherwise, it is standard and compatible with S7-300/400 CPUs.
Tags of a global data block: The behavior of a global DB with regard to retentive state
assignment is similar to that of an FB. Depending on the block access setting you can
define the retentive state either for individual tags or for all tags of a global data block.
If you select "Optimized" when you create the DB, you can set the retentive state for
each individual tag.
If you select "Standard - compatible with S7-300/400" when you create the DB, the
retentive-state setting applies to all tags of the DB; either all tags are retentive or no
tag is retentive.
A total of 10240 bytes of data can be retentive. To see how much is available, from the PLC
tag table or the assignment list, click on the "Retain" toolbar icon. Although this is where the
retentive range is specified for M memory, the second row indicates the total remaining
memory available for M and DB combined. Note that for this value to be accurate, you must
compile all data blocks with retentive tags.
83
PLC concepts
4.1 Execution of the user program
4.1.6.1
84
PLC concepts
4.1 Execution of the user program
System memory configures a byte with bits that turn on (value = 1) for a specific event.
Table 4- 6
7
System memory
5
Reserved
Always off
Always on
Value 0
Value 1
Diagnostic status
indicator
Value 0
1: Change
0: No change
Clock memory configures a byte that cycles the individual bits on and off at fixed intervals.
Each clock bit generates a square wave pulse on the corresponding M memory bit. These
bits can be used as control bits, especially when combined with edge instructions, to trigger
actions in the user code on a cyclic basis.
Table 4- 7
Clock memory
Bit number
Tag name
Period (s)
2.0
1.6
1.0
0.8
0.5
0.4
0.2
0.1
Frequency (Hz)
0.5
0.625
1.25
2.5
10
Because clock memory runs asynchronously to the CPU cycle, the status of the clock memory can change several times
during a long cycle.
85
PLC concepts
4.1 Execution of the user program
4.1.7
Diagnostics buffer
The CPU supports a diagnostics buffer which contains an entry for each diagnostic event.
Each entry includes a date and time the event occurred, an event category, and an event
description. The entries are displayed in chronological order with the most recent event at
the top. Up to 50 most recent events are available in this log. When the log is full, a new
event replaces the oldest event in the log. When power is lost, the events are saved.
The following types of events are recorded in the diagnostics buffer:
Each system diagnostic event; for example, CPU errors and module errors
Each state change of the CPU (each power up, each transition to STOP, each transition
to RUN)
To access the diagnostics buffer (Page 680), you must be online. From the "Online &
diagnostics" view, locate the diagnostics buffer under "Diagnostics > Diagnostics buffer".
4.1.8
86
PLC concepts
4.2 Data storage, memory areas, I/O and addressing
4.1.9
4.2
4.2.1
87
PLC concepts
4.2 Data storage, memory areas, I/O and addressing
Each different memory location has a unique address. Your user program uses these
addresses to access the information in the memory location. References to the input (I) or
output (Q) memory areas, such as I0.3 or Q1.7, access the process image. To immediately
access the physical input or output, append the reference with ":P" (such as I0.3:P, Q1.7:P,
or "Stop:P").
Table 4- 8
Memory areas
Memory area
Description
Force
Retentive
I
Process image input
No
No
I_:P 1
(Physical input)
Yes
No
Q
Process image output
No
No
Q_:P 1
(Physical output)
Yes
No
M
Bit memory
No
Yes
(optional)
L
Temp memory
No
No
DB
Data block
No
Yes
(optional)
To immediately access (read or write) the physical inputs and physical outputs, append a ":P" to the address or tag
(such as I0.3:P, Q1.7:P, or "Stop:P").
Each different memory location has a unique address. Your user program uses these
addresses to access the information in the memory location. The absolute address consists
of the following elements:
Memory area identifier (such as I, Q, or M)
Size of the data to be accessed ("B' for Byte, "W" for Word, or "D" for DWord)
Starting address of the data (such as byte 3 or word 3)
When accessing a bit in the address for a Boolean value, you do not enter a mnemonic for
the size. You enter only the memory area, the byte location, and the bit location for the data
(such as I0.0, Q0.1, or M3.4).
88
PLC concepts
4.2 Data storage, memory areas, I/O and addressing
0
Separator ("byte.bit")
In the example, the memory area and byte address (M = bit memory area, and 3 = Byte 3)
are followed by a period (".") to separate the bit address (bit 4).
Bit
I0.1
By appending a ":P" to the address, you can immediately read the digital and analog inputs
of the CPU, SB or SM. The difference between an access using I_:P instead of I is that the
data comes directly from the points being accessed rather than from the input process
image. This I_:P access is referred to as an "immediate read" access because the data is
retrieved immediately from the source instead of from a copy that was made the last time the
input process image was updated.
Because the physical input points receive their values directly from the field devices
connected to these points, writing to these points is prohibited. That is, I_:P accesses are
read-only, as opposed to I accesses which can be read or write.
89
PLC concepts
4.2 Data storage, memory areas, I/O and addressing
I_:P accesses are also restricted to the size of inputs supported by a single CPU, SB, or SM,
rounded up to the nearest byte. For example, if the inputs of a 2 DI / 2 DQ SB are configured
to start at I4.0, then the input points can be accessed as I4.0:P and I4.1:P or as IB4:P.
Accesses to I4.2:P through I4.7:P are not rejected, but make no sense since these points are
not used. Accesses to IW4:P and ID4:P are prohibited since they exceed the byte offset
associated with the SB.
Accesses using I_:P do not affect the corresponding value stored in the input process image.
Table 4- 10
Bit
I0.1:P
Q (process image output): The CPU copies the values stored in the output process image to
the physical output points. You can access the output process image in bits, bytes, words, or
double words. Both read and write access is permitted for process image outputs.
Table 4- 11
Bit
Q1.1
By appending a ":P" to the address, you can immediately write to the physical digital and
analog outputs of the CPU, SB or SM. The difference between an access using Q_:P instead
of Q is that the data goes directly to the points being accessed in addition to the output
process image (writes to both places). This Q_:P access is sometimes referred to as an
"immediate write" access because the data is sent immediately to the target point; the target
point does not have to wait for the next update from the output process image.
Because the physical output points directly control field devices that are connected to these
points, reading from these points is prohibited. That is, Q_:P accesses are write-only, as
opposed to Q accesses which can be read or write.
Q_:P accesses are also restricted to the size of outputs supported by a single CPU, SB, or
SM, rounded up to the nearest byte. For example, if the outputs of a 2 DI / 2 DQ SB are
configured to start at Q4.0, then the output points can be accessed as Q4.0:P and Q4.1:P or
as QB4:P. Accesses to Q4.2:P through Q4.7:P are not rejected, but make no sense since
these points are not used. Accesses to QW4:P and QD4:P are prohibited since they exceed
the byte offset associated with the SB.
Accesses using Q_:P affect both the physical output as well as the corresponding value
stored in the output process image.
Table 4- 12
Bit
Q1.1:P
M (bit memory area): Use the bit memory area (M memory) for both control relays and data
to store the intermediate status of an operation or other control information. You can access
the bit memory area in bits, bytes, words, or double words. Both read and write access is
permitted for M memory.
90
PLC concepts
4.2 Data storage, memory areas, I/O and addressing
Table 4- 13
Bit
M26.7
Temp (temporary memory): The CPU allocates the temp memory on an as-needed basis.
The CPU allocates the temp memory for the code block at the time when the code block is
started (for an OB) or is called (for an FC or FB). The allocation of temp memory for a code
block might reuse the same temp memory locations previously used by a different OB, FC or
FB. The CPU does not initialize the temp memory at the time of allocation and therefore the
temp memory might contain any value.
Temp memory is similar to M memory with one major exception: M memory has a "global"
scope, and temp memory has a "local" scope:
M memory: Any OB, FC, or FB can access the data in M memory, meaning that the data
is available globally for all of the elements of the user program.
Temp memory: Access to the data in temp memory is restricted to the OB, FC, or FB that
created or declared the temp memory location. Temp memory locations remain local and
are not shared by different code blocks, even when the code block calls another code
block. For example: When an OB calls an FC, the FC cannot access the temp memory of
the OB that called it.
The CPU provides temp (local) memory for each of the three OB priority groups:
16 Kbytes for startup and program cycle, including associated FBs and FCs
4 Kbytes for standard interrupt events including FBs and FCs
4 Kbytes for error interrupt events including FBs and FCs
You access temp memory by symbolic addressing only.
DB (data block): Use the DB memory for storing various types of data, including intermediate
status of an operation or other control information parameters for FBs, and data structures
required for many instructions such as timers and counters. You can access data block
memory in bits, bytes, words, or double words. Both read and write access is permitted for
read/write data blocks. Only read access is permitted for read-only data blocks.
Table 4- 14
Bit
DB1.DBX2.3
DB1.DBB4, DB10.DBW2,
DB20.DBD8
Note
When you specify an absolute address, STEP 7 precedes this address with a "%" character
to indicate that it is an absolute address. While programming, you can enter an absolute
address either with or without the "%" character (for example %I0.0 or I.0). If omitted,
STEP 7 supplies the "%" character.
91
PLC concepts
4.3 Processing of analog values
The figure shows an example of a CPU 1214C with two SMs and one SB. In this example,
you could change the address of the DI8 module to 2 instead of 8. The tool will assist you by
changing address ranges that are the wrong size or conflict with other addresses.
4.3
92
PLC concepts
4.4 Data types
4.4
Data types
Data types are used to specify both the size of a data element as well as how the data are to
be interpreted. Each instruction parameter supports at least one data type, and some
parameters support multiple data types. Hold the cursor over the parameter field of an
instruction to see which data types are supported for a given parameter.
A formal parameter is the identifier on an instruction that marks the location of data to be
used by that instruction (example: the IN1 input of an ADD instruction). An actual parameter
is the memory location (preceded by a "%" character) or constant containing the data to be
used by the instruction (example %MD400 "Number_of_Widgets"). The data type of the
actual parameter specified by you must match one of the supported data types of the formal
parameter specified by the instruction.
When specifying an actual parameter, you must specify either a tag (symbol) or an absolute
(direct) memory address. Tags associate a symbolic name (tag name) with a data type,
memory area, memory offset, and comment, and can be created either in the PLC tags
editor or in the Interface editor for a block (OB, FC, FB and DB). If you enter an absolute
address that has no associated tag, you must use an appropriate size that matches a
supported data type, and a default tag will be created upon entry.
All data types except String are available in the PLC tags editor and the block Interface
editors. String is available only in the block Interface editors. You can also enter a constant
value for many of the input parameters.
Bit and Bit sequences (Page 94): Bool (Boolean or bit value), Byte (8-bit byte value),
Word (16-bit value), DWord (32-bit double-word value)
Integer (Page 95)
USInt (unsigned 8-bit integer), SInt (signed 8-bit integer),
UInt (unsigned 16-bit integer), Int (signed 16-bit integer)
UDInt (unsigned 32-bit integer), DInt (signed 32-bit integer)
Floating-point Real (Page 95): Real (32-bit Real or floating-point value), LReal (64-bit
Real or floating-point value)
Time and Date (Page 96): Time (32-bit IEC time value), Date (16-bit date value), TOD
(32-bit time-off-day value), DT (64-bit date-and-time value)
Character and String (Page 97): Char (8-bit single character), String (variable-length
string of up to 254 characters)
Array (Page 99)
Data structure (Page 100): Struct
PLC Data type (Page 100)
Pointers (Page 101): Pointer, Any, Variant
Although not available as data types, the following BCD numeric format is supported by the
conversion instructions.
93
PLC concepts
4.4 Data types
Table 4- 15
Format
4.4.1
Numeric Range
BCD16
16
-999 to 999
123, -123
BCD32
32
-9999999 to 9999999
1234567, -1234567
Table 4- 16
Data
type
Bit
size
Number
type
Number
range
Constant
examples
Address
examples
Bool
Boolean
FALSE or TRUE
TRUE, 1,
I1.0
Q0.1
M50.7
DB1.DBX2.3
Tag_name
Byte
Word
16
Binary
0 or 1
0, 2#0
Octal
8#0 or 8#1
8#1
Hexadecimal
16#0 or 16#1
16#1
Binary
2#0 to 2#11111111
2#00001111
Unsigned integer
0 to 255
15
Octal
8#0 to 8#377
8#17
IB2
MB10
DB1.DBB4
Tag_name
Hexadecimal
B#16#0 to B#16#FF
B#16#F, 16#F
Binary
2#0 to 2#1111111111111111
2#1111000011110000
Unsigned integer
0 to 65535
61680
Octal
8#0 to 8#177777
8#170360
W#16#0 to W#16#FFFF,
W#16#F0F0, 16#F0F0
Hexadecimal
MW10
DB1.DBW2
Tag_name
16#0 to 16#FFFF
DWord
32
Binary
2#0 to
2#111111111111111111111111
11111111
2#111100001111111100
001111
Unsigned integer
0 to 4294967295
15793935
Octal
8#0 to 8#37777777777
8#74177417
Hexadecimal
DW#16#0000_0000 to
DW#16#FFFF_FFFF,
DW#16#F0FF0F,
16#F0FF0F
MD10
DB1.DBD8
Tag_name
16#0000_0000 to
16#FFFF_FFFF
94
PLC concepts
4.4 Data types
4.4.2
Table 4- 17
Data type
Bit size
Number Range
Constant examples
Address
examples
USInt
0 to 255
78, 2#01001110
SInt
-128 to 127
+50, 16#50
UInt
16
0 to 65,535
65295, 0
Int
16
-32,768 to 32,767
30000, +30000
UDInt
32
0 to 4,294,967,295
4042322160
DInt
32
-2,147,483,648 to
2,147,483,647
-2131754992
4.4.3
MB0, DB1.DBB4,
Tag_name
MW2, DB1.DBW2,
Tag_name
MD6, DB1.DBD8,
Tag_name
Table 4- 18
Constant Examples
Address examples
Real
32
MD100, DB1.DBD8,
Tag_name
LReal
64
-1.7976931348623158e+308 to
-2.2250738585072014e-308,
0,
+2.2250738585072014e-308 to
+1.7976931348623158e+308
12345.123456789e40,
1.2E+40
DB_name.var_name
Rules:
No direct addressing
support
Can be assigned in an
OB, FB, or FC block
interface table
Calculations that involve a long series of values including very large and very small numbers
can produce inaccurate results. This can occur if the numbers differ by 10 to the power of x,
where x > 6 (Real), or 15 (LReal). For example (Real): 100 000 000 + 1 = 100 000 000.
95
PLC concepts
4.4 Data types
4.4.4
Table 4- 19
Data type
Size
Range
Time
32 bits
T#-24d_20h_31m_23s_648ms to
T#24d_20h_31m_23s_647ms
T#5m_30s
T#1d_2h_15m_30s_45ms
TIME#10d20h30m20s630ms
500h10000ms
10d20h30m20s630ms
16 bits
D#1990-1-1 to D#2168-12-31
D#2009-12-31
DATE#2009-12-31
2009-12-31
Time_of_Day
32 bits
TOD#0:0:0.0 to TOD#23:59:59.999
TOD#10:20:30.400
TIME_OF_DAY#10:20:30.400
23:10:1
DTL
(Date and Time
Long)
12 bytes
Min.: DTL#1970-01-01-00:00:00.0
DTL#2008-12-16-20:30:20.250
Time
TIME data is stored as a signed double integer interpreted as milliseconds. The editor format
can use information for day (d), hours (h), minutes (m), seconds (s) and milliseconds (ms).
It is not necessary to specify all units of time. For example T#5h10s and 500h are valid.
The combined value of all specified unit values cannot exceed the upper or lower limits in
milliseconds for the Time data type (-2,147,483,648 ms to +2,147,483,647 ms).
Date
DATE data is stored as an unsigned integer value which is interpreted as the number of days
added to the base date 01/01/1990, to obtain the specified date. The editor format must
specify a year, month and day.
TOD
TOD (TIME_OF_DAY) data is stored as an unsigned double integer which is interpreted as
the number of milliseconds since midnight for the specified time of day (Midnight = 0 ms).
The hour (24hr/day), minute, and second must be specified. The fractional second
specification is optional.
96
PLC concepts
4.4 Data types
DTL
DTL (Date and Time Long) data type uses a12 byte structure that saves information on date
and time. You can define DTL data in either the Temp memory of a block or in a DB. A value
for all components must be entered in the "Start value" column of the DB editor.
Table 4- 20
Length
(bytes)
12
Value range
Min.: DTL#1970-01-01-00:00:00.0
DTL#2008-12-16-20:30:20.250
Year-Month-Day:Hour:Minute:
Second.Nanoseconds
Max.: DTL#2554-12-31-23:59:59.999
999 999
Each component of the DTL contains a different data type and range of values. The data
type of a specified value must match the data type of the corresponding components.
Table 4- 21
Byte
Component
Data type
Value range
Year
UINT
1970 to 2554
Month
USINT
1 to 12
Day
USINT
1 to 31
Weekday
USINT
1(Sunday) to 7(Saturday) 1
Hour
USINT
0 to 23
Minute
USINT
0 to 59
Second
USINT
0 to 59
Nanoseconds
UDINT
9
10
11
1
4.4.5
Table 4- 22
Data type
Size
Range
Char
8 bits
String
n+ 2 bytes
'ABC'
97
PLC concepts
4.4 Data types
Char
Char data occupies one byte in memory and stores a single character coded in ASCII
format. The editor syntax uses a single quote character before and after the ASCII character.
Visible characters and control characters can be used. A table of valid control characters is
shown in the description of the String data type.
String
The CPU supports the String data type for storing a sequence of single-byte characters. The
String data type contains a total character count (number of characters in the string) and the
current character count. The String type provides up to 256 bytes for storing the maximum
total character count (1 byte), the current character count (1 byte), and up to 254 characters,
with each character stored in 1 byte.
You can use literal strings (constants) for instruction parameters of type IN using single
quotes. For example, ABC is a three-character string that could be used as input for
parameter IN of the S_CONV instruction. You can also create string variables by selecting
data type "String" in the block interface editors for OB, FC, FB, and DB. You cannot create a
string in the PLC tags editor.
You can specify the maximum string size in bytes by entering square brackets after the
keyword "String" (once the data type "String" is selected from a data type drop-list). For
example, "MyString String[10]" would specify a 10-byte maximum size for MyString. If you do
not include the square brackets with a maximum size, then 254 is assumed.
The following example defines a String with maximum character count of 10 and current
character count of 3. This means the String currently contains 3 one-byte characters, but
could be expanded to contain up to 10 one-byte characters.
Table 4- 23
Total Character
Count
Current Character
Count
Character 1
Character 2
Character 3
...
Character 10
10
'C' (16#43)
'A' (16#41)
'T' (16#54)
...
Byte 0
Byte 1
Byte 2
Byte 3
Byte 4
...
Byte 11
ASCII control characters can be used in Char and String data. The following table shows
examples of control character syntax.
Table 4- 24
Control characters
Control function
Examples
$L or $l
0A
Line feed
'$LText', '$0AText'
$N or $n
0A and 0D
Line break
'$NText', '$0A$0DText'
0C
Form feed
'$PText', '$0CText'
$R or $r
0D
'$RText','$0DText'
$T or $t
09
Tab
'$TText', '$09Text'
98
PLC concepts
4.4 Data types
Control characters
Control function
Examples
$$
24
Dollar sign
'100$$', '100$24'
$'
27
Single quote
'$'Text$'','$27Text$27'
4.4.6
Arrays
You can create an array that contains multiple elements of the same data type. Arrays can
be created in the block interface editors for OB, FC, FB, and DB. You cannot create an array
in the PLC tags editor.
To create an array from the block interface editor, name the array and choose data type
"Array [lo .. hi] of type", then edit "lo", "hi", and "type" as follows:
lo - the starting (lowest) index for your array
hi - the ending (highest) index for your array
type - one of the data types, such as BOOL, SINT, UDINT
Table 4- 25
Data Type
Array syntax
ARRAY
The index can be negative, but the lower limit must be less than or equal to the upper limit.
The memory size of an array = (size of one element * total number of elements in array)
Array index
Constant or
variable
99
PLC concepts
4.4 Data types
Example: array
declarations
Example: array
addresses
4.4.7
ARRAY[1..20] of REAL
ARRAY[-5..5] of INT
ARRAY1[0]
ARRAY1 element 0
ARRAY2[1,2]
ARRAY3[i,j]
4.4.8
100
PLC concepts
4.4 Data types
4.4.9
4.4.9.1
%LW
%\WH
%\WH
'%QXPEHURU
%\WH
%\WH
0HPRU\DUHD
E
%\WH
%\WH
E E\WHDGGUHVV
[ ELWDGGUHVV
Depending on the instruction, you can declare the following three types of pointers:
Area-internal pointer: contains data on the address of a variable
Area-crossing pointer: contains data on the memory area and the address of a variable
DB-pointer: contains a data block number and the address of a variable
Table 4- 26
Pointer types:
Type
Format
Example entry
Area-internal pointer
P#Byte.Bit
P#20.0
Area-crossing pointer
P#Memory_area_Byte.Bit
P#M20.0
DB-pointer
P#Data_block.Data_element
P#DB10.DBX20.0
You can enter a parameter of type Pointer without the prefix (P #). Your entry will be
automatically converted to the pointer format.
101
PLC concepts
4.4 Data types
Table 4- 27
Hexadecimal code
4.4.9.2
Data type
Description
b#16#81
b#16#82
b#16#83
b#16#84
DBX
Data block
b#16#85
DIX
b#16#86
Local data
b#16#87
%LW
%\WH
KIRU6
%\WH
'DWDW\SH
%\WH
%\WH
5HSHDWIDFWRU
%\WH
%\WH
'%1XPEHURU
%\WH
%\WH
0HPRU\DUHD
E
%\WH
%\WH
E %\WHDGUHVV
[ %LWDGUHVV
A pointer can not detect ANY structures. It can only be assigned to local variables.
Table 4- 28
Format
Entry example
Description
P#Data_block.Memory_area
Data_address Type Number
10 words in global DB 11
starting from DBB 20.0
P#Memory_area Data_address
Type Number
Input I1.0
102
PLC concepts
4.4 Data types
Table 4- 29
Hexadecimal code
Data type
b#16#00
Null
Null pointer
b#16#01
Bool
Bits
b#16#02
Byte
Bytes, 8 Bits
Description
b#16#03
Char
8-bit character
b#16#04
Word
16-bit-word
b#16#05
Int
16-bit-integer
b#16#37
SInt
8-bit-integer
b#16#35
UInt
b#16#34
USInt
b#16#06
DWord
b#16#07
DInt
b#16#36
UDInt
b#16#08
Real
b#16#0B
Time
Time
b#16#13
String
Character string
Table 4- 30
4.4.9.3
Hexadecimal code
Memory area
Description
b#16#81
b#16#82
b#16#83
b#16#84
DBX
Data block
b#16#85
DIX
b#16#86
Local data
b#16#87
Table 4- 31
Length
(Byte)
Representation
Format
Example entry
Symbolic
Operand
MyTag
DB_name.Struct_name.element_name
MyDB.Struct1.pressure1
Operand
%MW10
P#DB10.DBX10.0 INT 12
Absolute
103
PLC concepts
4.4 Data types
4.4.10
Note
Valid data types that can be accessed by slice are Byte, Char, Conn_Any, Date, DInt,
DWord, Event_Any, Event_Att, Hw_Any, Hw_Device, HW_Interface, Hw_Io, Hw_Pwm,
Hw_SubModule, Int, OB_Any, OB_Att, OB_Cyclic, OB_Delay, OB_WHINT, OB_PCYCLE,
OB_STARTUP, OB_TIMEERROR, OB_Tod, Port, Rtm, SInt, Time, Time_Of_Day, UDInt,
UInt, USInt, and Word. PLC Tags of type Real can be accessed by slice, but data block tags
of type Real cannot.
104
PLC concepts
4.4 Data types
Examples
In the PLC tag table, "DW" is a declared tag of type DWORD. The examples show bit, byte,
and word slice access:
LAD
FBD
Bit access
SCL
IF "DW".x11 THEN
...
END_IF;
Byte access
IF "DW".b2 = "DW".b3
THEN
...
END_IF;
Word access
See also
SCL (Page 156)
4.4.11
Declaration
To overlay a parameter, declare an additional parameter directly after the parameter that is
to be overlaid and select the data type "AT". The editor creates the overlay, and you can
then choose the data type, struct, or array that you wish to use for the overlay.
105
PLC concepts
4.4 Data types
Example
This example shows the input parameters of a standard-access FB. The byte tag B1 is
overlaid with an array of Booleans:
Table 4- 32
AT[0]
AT[1]
AT[2]
AT[3]
AT[4]
AT[5]
AT[6]
AT[7]
FBD
SCL
IF #AT[1] THEN
...
END_IF;
IF (#DW1_Struct.S1 =
W#16#000C) THEN
...
END_IF;
out1 := #DW1_Struct.S2;
Rules
Overlaying of tags is only possible in FB and FC blocks with standard access.
You can overlay parameters for all block types and all declaration sections.
S7-1200 Programmable controller
106
PLC concepts
4.5 Using a memory card
An overlaid parameter can be used like any other block parameter.
You cannot overlay parameters of type VARIANT.
The size of the overlaying parameter must be less than or equal to the size of the overlaid
parameter.
The overlaying variable must be declared immediately after the variable that it overlays
and identified with the keyword "AT".
See also
SCL (Page 156)
4.5
107
PLC concepts
4.5 Using a memory card
The copied program on a memory card includes the code blocks, the data blocks, the
technology objects, and the device configuration. The memory card does not contain any
force values. The force values are not part of the program, but are stored in the load
memory, whether the internal load memory of the CPU, or the external load memory (a
program card). If a program card is inserted in the CPU, STEP 7 then applies the force
values only to the external load memory on the program card.
You also use a memory card when downloading firmware updates (Page 115).
4.5.1
Check that the memory card is not write-protected. Slide the protection
switch away from the "Lock" position.
CAUTION
If you insert a memory card (whether configured as a program or transfer card) into a
running CPU, the CPU goes immediately to STOP mode, which might result in damage to
the equipment or to the process being controlled. Before inserting or removing a memory
card, always ensure that the CPU is not actively controlling a machine or process. Always
install an emergency stop circuit for your application or process.
Note
If you insert a memory card with the CPU in STOP mode, the diagnostic buffer displays a
message that the memory card evaluation has been initiated. The CPU will evaluate the
memory card the next time you either change the CPU to RUN mode, reset the CPU
memory with an MRES, or power-cycle the CPU.
108
PLC concepts
4.5 Using a memory card
109
PLC concepts
4.5 Using a memory card
4.5.2
Configuring the startup parameter of the CPU before copying the project to the
memory card
When you copy a program to a transfer card or a program card, the program includes the
startup parameter for the CPU. Before copying the program to the memory card, always
ensure that you have configured the operating mode for the CPU following a power-cycle.
Select whether the CPU starts in STOP mode, RUN mode, or in the previous mode (prior to
the power cycle).
4.5.3
Transfer card
CAUTION
Electrostatic discharge can damage the memory card or the receptacle on the CPU.
Make contact with a grounded conductive pad and/or wear a grounded wrist strap
whenever you handle the memory card. Store the memory card in a conductive container.
110
PLC concepts
4.5 Using a memory card
4. In the "Memory card" dialog, select "Transfer" from the "Card type" drop-down menu.
At this point, STEP 7 creates the empty transfer card. If you are creating an empty
transfer card, such as to recover from a lost CPU password (Page 118), remove the
transfer card from the card reader.
5. Add the program by selecting the CPU device (such as PLC_1 [CPU 1214 DC/DC/DC]) in
the Project tree and dragging the CPU device to the memory card. (Another method is to
copy the CPU device and paste it to the memory card.) Copying the CPU device to the
memory card opens the "Load preview" dialog.
6. In the "Load preview" dialog, click the "Load" button to copy the CPU device to the
memory card.
7. When the dialog displays a message that the CPU device (program) has been loaded
without errors, click the "Finish" button.
111
PLC concepts
4.5 Using a memory card
3. After the rebooting and evaluating the memory card, the CPU copies the program to the
internal load memory of the CPU.
The RUN/STOP LED alternately flashes green and yellow to indicate that the program is
being copied. When the RUN/STOP LED turns on (solid yellow) and the MAINT LED
flashes, the copy process has finished. You can then remove the memory card.
4. Reboot the CPU (either by restoring power or by the alternative methods for rebooting) to
evaluate the new program that was transferred to internal load memory.
The CPU then goes to the start-up mode (RUN or STOP) that you configured for the project.
Note
You must remove the transfer card before setting the CPU to RUN mode.
4.5.4
Program card
CAUTION
Electrostatic discharge can damage the memory card or the receptacle on the CPU.
Make contact with a grounded conductive pad and/or wear a grounded wrist strap when
you handle the memory card. Store the memory card in a conductive container.
Check that the memory card is not write-protected. Slide the protection
switch away from the "Lock" position.
Before you copy any program elements to the program card, delete any
previously saved programs from the memory card.
112
PLC concepts
4.5 Using a memory card
5. Add the program by selecting the CPU device (such as PLC_1 [CPU 1214 DC/DC/DC]) in
the Project tree and dragging the CPU device to the memory card. (Another method is to
copy the CPU device and paste it to the memory card.) Copying the CPU device to the
memory card opens the "Load preview" dialog.
113
PLC concepts
4.5 Using a memory card
6. In the "Load preview" dialog, click the "Load" button to copy the CPU device to the
memory card.
7. When the dialog displays a message that the CPU device (program) has been loaded
without errors, click the "Finish" button.
114
PLC concepts
4.5 Using a memory card
4.5.5
Firmware update
CAUTION
Electrostatic discharge can damage the memory card or the receptacle on the CPU.
Make contact with a grounded conductive pad and/or wear a grounded wrist strap
whenever you handle the memory card. Store the memory card in a conductive container.
You use a memory card when downloading firmware updates from customer support
(http://www.siemens.com/automation/). From this Web site, navigate to Automation
Technology > Automation Systems > SIMATIC Industrial Automation Systems > PLC >
Modular controllers SIMATIC S7 > SIMATIC S7-1200. From there continue navigating to the
specific type of module that you need to update. Under "Support", click the link for "Software
Downloads" to proceed.
Alternatively, you can access the S7-1200 downloads Web page
(http://support.automation.siemens.com/WW/view/en/34612486/133100) directly.
Note
You cannot update an S7-1200 CPU V2.2 or earlier to S7-1200 V3.0 by firmware update.
CAUTION
Do not use the Windows formatter utility or any other formatting utility to reformat the
memory card.
If a Siemens memory card is reformatted using the Microsoft Windows formatter utility, then
the memory card will no longer be usable by a S7-1200 CPU.
115
PLC concepts
4.5 Using a memory card
To download the firmware update to your memory card, follow these steps:
1. Insert a blank SIMATIC MC 24 MB memory card into an SD card reader/writer attached
to your computer.
You can reuse a SIMATIC memory card that contains a user program or another firmware
update, but you must delete some of the files on the memory card.
CAUTION
Do NOT delete the hidden files "__LOG__" and "crdinfo.bin" from the memory card.
The "__LOG__" and "crdinfo.bin" files are required for the memory card. If you delete
these files, you cannot use the memory card with the CPU.
To reuse a memory card, you must delete the "S7_JOB.S7S" file and any existing "Data
Logs" folders or any folder (such as "SIMATIC.S7S" or "FWUPDATE.S7S") before
downloading the firmware update. However, do not delete the files "__LOG__" and
"crdinfo.bin". (These files are typically hidden and are required.) Use Windows Explorer to
display the contents of the memory card and to delete the file and folders.
2. Select the self-extracting file (.exe) for the firmware update that corresponds to your
module, and download it to your computer. Double-click the update file, set the file
destination path to be the root directory of the SIMATIC memory card, and start the
extraction process. After the extraction is complete, the root directory (folder) of the
memory card will contain a "FWUPDATE.S7S" directory and the "S7_JOB.S7S" file.
116
PLC concepts
4.5 Using a memory card
To install the firmware update, follow these steps:
WARNING
Verify that the CPU is not actively running a process before installing the firmware update.
Installing the firmware update will cause the CPU to go to STOP mode, which could affect
the operation of an online process or machine. Unexpected operation of a process or
machine could result in death or injury to personnel and/or property damage.
Before inserting the memory card, always ensure that the CPU is offline and in a safe state.
1. Insert the memory card into the CPU. If the CPU is in RUN mode, the CPU then goes to
STOP mode. The maintenance (MAINT) LED flashes to indicate that the memory card
needs to be evaluated.
2. Power-cycle the CPU to start the firmware update. Alternative methods for rebooting the
CPU are to perform either a STOP-to-RUN transition or a memory reset (MRES) from
STEP 7.
NOTICE
To complete the firmware upgrade for the module, you must ensure that the external 24
VDC power to the module remains on.
After the CPU reboots, the firmware update starts. The RUN/STOP LED alternately
flashes green and yellow to indicate that the update is being copied. When the
RUN/STOP LED turns on (solid yellow) and the MAINT LED flashes, the copy process
has finished. You must then remove the memory card.
3. After removing the memory card, reboot the CPU again (either by restoring power or by
the alternative methods for rebooting) to load the new firmware.
The user program and hardware configuration are not affected by the firmware update.
When the CPU is powered up, the CPU enters the configured start-up state. (If the startup
mode for your CPU was configured to "Warm restart - mode before POWER OFF", the CPU
will be in STOP mode because the last state of the CPU was STOP.)
Note
Updating multiple modules connected to CPU
If your hardware configuration contains multiple modules that correspond to a single
firmware update file on the memory card, the CPU applies the updates to all applicable
modules (CM, SM, SB) in configuration order, that is, by increasing order of the module
position in Device Configuration in STEP 7.
If you have downloaded multiple firmware updates to the memory card for multiple modules,
the CPU applies the updates in the order in which you downloaded them to the memory
card.
117
PLC concepts
4.6 Recovery from a lost password
4.6
118
Device configuration
You create the device configuration for your PLC by adding a CPU and additional modules to
your project.
CPU: Slot 1
Signal module (SM) for digital or analog I/O: up to 8, inserted in slots 2 through 9
119
Device configuration
5.1 Inserting a CPU
5.1
Inserting a CPU
You create your device configuration by inserting a CPU into your project. Be sure you insert
the correct model and firmware version from the list. Selecting the CPU from the "Add new
device" dialog creates the rack and CPU.
"Add new device" dialog
Note
The CPU does not have a pre-configured IP address. You must manually assign an IP
address for the CPU during the device configuration. If your CPU is connected to a router on
the network, you also enter the IP address for a router.
120
Device configuration
5.2 Detecting the configuration for an unspecified CPU
5.2
From the device configuration editor, you select the option for detecting the configuration of
the connected device.
After you select the CPU from the online dialog and click the Load button, STEP 7 uploads
the hardware configuration from the CPU, including any modules (SM, SB, or CM). You can
then configure the parameters for the CPU and the modules.
121
Device configuration
5.3 Adding modules to the configuration
5.3
Table 5- 1
Module
Result
SM
SB, BB or
CB
CM or CP
122
Device configuration
5.4 Configuring the operation of the CPU
5.4
Note
If an HSC is not configured to use a point, the filter setting chosen in this screen applies. If
an HSC is configured to use an input point, the filter setting for that point is automatically set
at 800 ns and is not affected by the configuration on this screen.
WARNING
If the filter time for a digital input channel is changed from a previous setting, a new "0"
level input value may need to be presented for up to 20.0 ms accumulated duration before
the filter becomes fully responsive to new inputs. During this time, short "0" pulse events of
duration less than 20.0 ms may not be detected or counted.
This changing of filter times can result in unexpected machine or process operation, which
may cause death or serious injury to personnel, and/or damage to equipment.
To ensure that a new filter time goes immediately into effect, a power cycle of the CPU
must be applied.
Table 5- 2
CPU properties
Property
Description
PROFINET interface
Configures the behavior of the local (on-board) digital and analog I/O (for example, digital
input filter times and digital output reaction to a CPU stop).
High-speed counters
(Page 337) and pulse
generators (Page 311)
Enables and configures the high-speed counters (HSC) and the pulse generators used for
pulse-train operations (PTO) and pulse-width modulation (PWM)
When you configure the outputs of the CPU or signal board as pulse generators (for use with
the PWM or motion control instructions), the corresponding output addresses (Q0.0, Q0.1,
Q4.0, and Q4.1) are removed from the Q memory and cannot be used for other purposes in
your user program. If your user program writes a value to an output used as a pulse
generator, the CPU does not write that value to the physical output.
123
Device configuration
5.4 Configuring the operation of the CPU
Property
Description
Startup after POWER ON: Selects the behavior of the CPU following an off-to-on transition,
such as to start in STOP mode or to go to RUN mode after a warm restart
Supported hardware compatibility: Configures the substitution strategy for all system
components (SM, SB, CM, CP and CPU):
Communication load
Enables a byte for "system memory" functions and enables a byte for "clock memory"
functions (where each bit toggles on and off at a predefined frequency).
Time of day
Sets the read/write protection and password for accessing the CPU
Connection resources
(Page 424)
Provides a summary of the communication connections that are available for the CPU and
the number of connections that have been configured.
Overview of addresses
Provides a summary of the I/O addresses that have been configured for the CPU.
124
Device configuration
5.5 Configuring the parameters of the modules
5.5
Digital I/O: Inputs can be configured for rising-edge detection or falling-edge detection
(associating each with an event and hardware interrupt) and also for "pulse catch" (to
stay on after a momentary pulse) through the next update of the input process image.
Outputs can use a freeze or substitute value.
Analog I/O: For individual inputs, configure parameters, such as measurement type
(voltage or current), range and smoothing, and to enable underflow or overflow
diagnostics. Analog outputs provide parameters such as output type (voltage or current)
and for diagnostics, such as short-circuit (for voltage outputs) or upper/lower limit
diagnostics. You do not configure ranges of analog inputs and outputs in engineering
units on the Properties dialog. You must handle this in your program logic as described in
the topic "Processing of analog values (Page 92)".
I/O diagnostic addresses: Configures the start address for the set of inputs and outputs of
the module
Depending on the type of communication interface, you configure the parameters for the
network.
125
Device configuration
5.6 Configuring the CPU for communication
5.6
5.6.1
Action
Result
126
Device configuration
5.6 Configuring the CPU for communication
5.6.2
Table 5- 4
Connection properties
Note
When you configure the connection properties for one CPU, STEP 7 allows you either to
select a specific connection DB in the partner CPU (if one exists), or to create the connection
DB for the partner CPU. The partner CPU must already have been created for the project
and cannot be an "unspecified" CPU.
You must still insert a TSEND_C, TRCV_C or TCON instruction into the user program of the
partner CPU. When you insert the instruction, select the connection DB that was created by
the configuration.
127
Device configuration
5.6 Configuring the CPU for communication
Table 5- 5
Connection properties
"General" (shown)
"Local ID"
Parameter
Definition
Address
Assigned IP addresses
General
Address
details
End point
Interface
Subnet
Interface type
Connection type
Connection ID
ID number
Connection data
Establish active
connection
End point
Rack/slot
Connection resource
Port (decimal):
128
Device configuration
5.6 Configuring the CPU for communication
Parameter
Definition
TSAP 1 and Subnet ID:
ISO on TCP (RFC 1006) and S7 communication: Local and partner CPU
TSAPs in ASCII and hexadecimal formats
When configuring a connection with an S7-1200 CPU for ISO-on-TCP, use only ASCII characters in the TSAP extension
for the passive communication partners.
Port Numbers
With TCP and UDP protocols, the connection parameter configuration of the Local (active)
connection CPU must specify the remote IP address and port number of the Partner
(passive) connection CPU.
In the "Address Details" section of the Connection Parameters dialog, you define the ports to
be used. The port of a connection in the CPU is entered in the "Local Port" field. The port
assigned for the connection in your partner CPU is entered under the "Partner Port" field.
5.6.3
Table 5- 7
Byte
Description
01
block_length
UInt
23
id
CONN_OUC
(Word)
connection_type
USInt
Connection type:
18: ISO-on-TCP
19: UDP
129
Device configuration
5.6 Configuring the CPU for communication
Byte
active_est
Description
Bool
UDP: FALSE
local_device_id
USInt
local_tsap_id_len
USInt
ISO-on-TCP: 2 to 16
UDP: 2
rem_subnet_id_len
USInt
rem_staddr_len
USInt
10
rem_tsap_id_len
USInt
ISO-on-TCP: 2 to 16
UDP: 0
11
next_staddr_len
USInt
12 27
local_tsap_id
Array [1..16] of
Byte
local_tsap_id[3-16] = irrelevant
local_tsap_id[1] = B#16#E0;
rem_subnet_id
Array [1..6] of
USInt
130
Device configuration
5.6 Configuring the CPU for communication
Byte
34 39
rem_staddr
Description
Array [1..6] of
USInt
40 55
rem_tsap_id
Array [1..16] of
Byte
rem_tsap_id[3-16] = irrelevant
rem_tsap_id[1] = B#16#E0
56 61
next_staddr
Array [1..6] of
Byte
62 63
spare
Word
Reserved: W#16#0000
See also
Configuring the Local/Partner connection path (Page 127)
131
Device configuration
5.6 Configuring the CPU for communication
5.6.4
5.6.4.1
132
Device configuration
5.6 Configuring the CPU for communication
Table 5- 8
Subnet Mask
On-board adapter
card
Ethernet-to-USB
adapter card
Connected to
your plant LAN
(and possibly
the world-wide
web)
Assigning or checking the IP address of your programming device using "My Network Places" (on
your desktop)
You can assign or check your programming device's IP address with the following menu
selections:
(Right-click) "My Network Places"
"Properties"
(Right-click) "Local Area Connection"
"Properties"
In the "Local Area Connection Properties" dialog, in the "This connection uses the following
items:" field, scroll down to "Internet Protocol (TCP/IP)". Click "Internet Protocol (TCP/IP)",
and click the "Properties" button. Select "Obtain an IP address automatically (DHCP)" or
"Use the following IP address" (to enter a static IP address).
Note
Dynamic Host Configuration Protocol (DHCP) automatically assigns an IP address to your
programming device upon power up from the DHCP server.
133
Device configuration
5.6 Configuring the CPU for communication
5.6.4.2
5.6.4.3
134
Device configuration
5.6 Configuring the CPU for communication
3. In the "Online & diagnostics"
dialog, make the following menu
selections:
"Functions"
"Assign IP address"
135
Device configuration
5.6 Configuring the CPU for communication
5.6.4.4
PROFINET port
136
Device configuration
5.6 Configuring the CPU for communication
Routers rely on IP addresses to deliver and receive data packets.
IP addresses properties: In
the Properties window,
select the "Ethernet
addresses" configuration
entry. STEP 7 displays the
Ethernet address
configuration dialog, which
associates the software
project with the IP address
of the CPU that will receive
that project.
Table 5- 9
Parameter
Subnet
IP protocol
Description
Name of the Subnet to which the device is connected. Click the "Add new subnet" button to create a
new subnet. "Not connected" is the default. Two connection types are possible:
IP address
Subnet mask
Use IP router
Router address
Note
All IP addresses are configured when you download the project. If the CPU does not have a
pre-configured IP address, you must associate the project with the MAC address of the
target device. If your CPU is connected to a router on a network, you must also enter the IP
address of the router.
The "Set IP address using a different method" radio button allows you to change the IP
address online or by using the "T_CONFIG" instruction after the program is downloaded.
This IP address assignment method is for the CPU only.
137
Device configuration
5.6 Configuring the CPU for communication
WARNING
After downloading a hardware configuration with the "Set IP address using a different
method" option enabled, it is not possible to transition the CPU operating mode from RUN
to STOP or from STOP to RUN.
User equipment will keep running under these conditions and may result in unexpected
machine or process operations, which could cause death, severe personal injury, or
property damage if proper precautions are not taken.
Ensure that your CPU IP address(es) are set before using the CPU in an actual automation
environment. This can be done by using your STEP 7 programming package, the S7-1200
Tool, or an attached HMI device in conjunction with the T_CONFIG instruction.
WARNING
When changing the IP address of a CPU online or from the user program, it is possible to
create a condition in which the PROFINET network may stop.
If the IP address of a CPU is changed to an IP address outside the subnet, the PROFINET
network will lose communication, and all data exchange will stop. User equipment may be
configured to keep running under these conditions. Loss of PROFINET communication may
result in unexpected machine or process operations, causing death, severe personal injury,
or property damage if proper precautions are not taken.
If an IP address must be changed manually, ensure that the new IP address lies within the
subnet.
See also
T_CONFIG (Page 451)
138
Device configuration
5.6 Configuring the CPU for communication
5.6.5
139
Device configuration
5.6 Configuring the CPU for communication
Using the "Extended download to device" dialog to test for connected network devices
The S7-1200 CPU "Download to device" function and its "Extended download to device"
dialog can show all accessible network devices and whether or not unique IP addresses
have been assigned to all devices. To display all accessible and available devices with their
assigned MAC or IP addresses, check the "Show all accessible devices" checkbox.
If the required network device is not in this list, communications to that device have been
interrupted for some reason. The device and network must be investigated for hardware
and/or configuration errors.
5.6.6
140
Device configuration
5.6 Configuring the CPU for communication
MAC address
Initially, the CPU has no IP address, only a factory-installed MAC address. PROFINET
communications requires that all devices be assigned a unique IP address.
Use the CPU "Download to
device" function and the
"Extended download to device"
dialog to show all accessible
network devices and ensure that
unique IP addresses have been
assigned to all devices. This
dialog displays all accessible and
available devices with their
assigned MAC or IP addresses.
MAC addresses are all-important
in identifying devices that are
missing the required unique IP
address.
5.6.7
141
Device configuration
5.6 Configuring the CPU for communication
In NTP mode, it is generally UTC (Universal Time Coordinated) that is transferred; this
corresponds to GMT (Greenwich Mean Time).
In the Properties window, select the "Time synchronization" configuration entry. STEP 7
displays the Time synchronization configuration dialog:
Note
All IP addresses are configured when you download the project.
Table 5- 10
5.6.8
Parameter
Definition
Enable time-of-day
synchronization using Network
Time Protocol (NTP) servers
Server 1
Server 2
Server 3
Server 4
142
Device configuration
5.6 Configuring the CPU for communication
In the CPU Properties under "Startup", you can find the "Parameter assignment time for
distributed I/O" (time-out). The default configurable time-out is 60,000 ms (1 minute); the
user can configure this time.
143
Device configuration
5.6 Configuring the CPU for communication
144
Programming concepts
6.1
Table 6- 1
Recommended steps
Tasks
Divide your process or machine into sections that have a level of independence from each other.
These partitions determine the boundaries between controllers and influence the functional
description specifications and the assignment of resources.
Write the descriptions of operation for each section of the process or machine, such as the I/O
points, the functional description of the operation, the states that must be achieved before
allowing action for each actuator (such as a solenoid, a motor, or a drive), a description of the
operator interface, and any interfaces with other sections of the process or machine.
Identify any equipment that might require hard-wired logic for safety. Remember that control
devices can fail in an unsafe manner, which can produce unexpected startup or change in the
operation of machinery. Where unexpected or incorrect operation of the machinery could result in
physical injury to people or significant property damage, consider the implementation of
electromechanical overrides (which operate independently of the PLC) to prevent unsafe
operations. The following tasks should be included in the design of safety circuits:
Identify the conditions that would assure the operation is not hazardous, and determine how
to detect these conditions independently of the PLC.
Identify how the PLC affects the process when power is applied and removed, and also
identify how and when errors are detected. Use this information only for designing the normal
and expected abnormal operation. You should not rely on this "best case" scenario for safety
purposes.
Design the manual or electromechanical safety overrides that block the hazardous operation
independent of the PLC.
Provide the appropriate status information from the independent circuits to the PLC so that
the program and any operator interfaces have necessary information.
Identify any other safety-related requirements for safe operation of the process.
Determine what level of protection (Page 164) you require for access to your process. You can
password-protect CPUs and program blocks from unauthorized access.
145
Programming concepts
6.2 Structuring your user program
Recommended steps
Tasks
Based on the requirements of the functional specifications, create the following drawings of the
operator stations:
Create the
configuration drawings
Create a list of
symbolic names
6.2
Overview drawing that shows the location of each operator station in relation to the process
or machine.
Mechanical layout drawing of the devices for the operator station, such as display, switches,
and lights.
Electrical drawings with the associated I/O of the PLC and signal modules.
Based on the requirements of the functional specification, create configuration drawings of the
control equipment:
Overview drawing that shows the location of each PLC in relation to the process or machine.
Mechanical layout drawing of each PLC and any I/O modules, including any cabinets and
other equipment.
Electrical drawings for each PLC and any I/O modules, including the device model numbers,
communications addresses, and I/O addresses.
Create a list of symbolic names for the absolute addresses. Include not only the physical I/O
signals, but also the other elements (such as tag names) to be used in your program.
146
Programming concepts
6.2 Structuring your user program
Modular structure:
2%
)%
)&
By creating generic code blocks that can be reused within the user program, you can simplify
the design and implementation of the user program. Using generic code blocks has a
number of benefits:
You can create reusable blocks of code for standard tasks, such as for controlling a pump
or a motor. You can also store these generic code blocks in a library that can be used by
different applications or solutions.
When you structure the user program into modular components that relate to functional
tasks, the design of your program can be easier to understand and to manage. The
modular components not only help to standardize the program design, but can also help
to make updating or modifying the program code quicker and easier.
Creating modular components simplifies the debugging of your program. By structuring
the complete program as a set of modular program segments, you can test the
functionality of each code block as it is developed.
Creating modular components that relate to specific technological functions can help to
simplify and reduce the time involved with commissioning the completed application.
147
Programming concepts
6.3 Using blocks to structure your program
6.3
2%)%)&
2%)%)&
Calling block
Program execution
Instruction or event that initiates the execution of
another block
Program execution
Block end (returns to calling block)
You can nest the block calls for a more modular structure. In the following example, the
nesting depth is 4: the program cycle OB plus 3 layers of calls to code blocks.
2%
)%
)&
Start of cycle
Nesting depth
'%
)%
'%
)&
6.3.1
)%
)&
'%
'%
148
Programming concepts
6.3 Using blocks to structure your program
The program cycle OB contains your main program. You can include more than one program
cycle OB in your user program. During RUN mode, the program cycle OBs execute at the
lowest priority level and can be interrupted by all other types of program processing. The
startup OB does not interrupt the program cycle OB because the CPU executes the startup
OB before going to RUN mode.
After finishing the processing of the program cycle OBs, the CPU immediately executes the
program cycle OBs again. This cyclic processing is the "normal" type of processing used for
programmable logic controllers. For many applications, the entire user program is located in
a single program cycle OB.
You can create other OBs to perform specific functions, such as for handling interrupts and
errors, or for executing specific program code at specific time intervals. These OBs interrupt
the execution of the program cycle OBs.
Use the "Add new block" dialog to create new OBs in your user program.
Interrupt handling is always eventdriven. When such an event occurs,
the CPU interrupts the execution of
the user program and calls the OB
that was configured to handle that
event. After finishing the execution
of the interrupting OB, the CPU
resumes the execution of the user
program at the point of interruption.
The CPU determines the order for handling interrupt events by a priority assigned to each
OB. Each event has a particular servicing priority. The respective priority level within a
priority class determines the order in which the OBs are executed. Several interrupt events
can be combined into priority classes. For more information, refer to the PLC concepts
chapter section on execution of the user program (Page 67).
149
Programming concepts
6.3 Using blocks to structure your program
6.3.2
Function (FC)
A function (FC) is a code block that typically performs a specific operation on a set of input
values. The FC stores the results of this operation in memory locations. For example, use
FCs to perform standard and reusable operations (such as for mathematical calculations) or
technological functions (such as for individual controls using bit logic operations). An FC can
also be called several times at different points in a program. This reuse simplifies the
programming of frequently recurring tasks.
An FC does not have an associated instance data block (DB). The FC uses the local data
stack for the temporary data used to calculate the operation. The temporary data is not
saved. To store data permanently, assign the output value to a global memory location, such
as M memory or to a global DB.
6.3.3
150
Programming concepts
6.3 Using blocks to structure your program
By designing the FB for generic control tasks, you can reuse the FB for multiple devices by
selecting different instance DBs for different calls of the FB.
An FB stores the Input, Output, and InOut, and Static parameters in an instance DB.
2%
)%
)%'%
'%
)%'%
)%'%
'%
In this example, FB 22 controls three separate devices, with DB 201 storing the operational
data for the first device, DB 202 storing the operational data for the second device, and DB
203 storing the operational data for the third device.
6.3.4
151
Programming concepts
6.3 Using blocks to structure your program
The data stored in a DB is not deleted when the execution of the associated code block
comes to an end. There are two types of DBs:
A global DB stores data for the code blocks in your program. Any OB, FB, or FC can
access the data in a global DB.
An instance DB stores the data for a specific FB. The structure of the data in an instance
DB reflects the parameters (Input, Output, and InOut) and the static data for the FB. (The
Temp memory for the FB is not stored in the instance DB.)
Note
Although the instance DB reflects the data for a specific FB, any code block can access
the data in an instance DB.
You can configure a DB as being read-only:
1. Right-click the DB in the project navigator and select "Properties" from the context menu.
2. In the "Properties" dialog, select "Attributes".
3. Select the "Data block write-protected in the device" option and click "OK".
152
Programming concepts
6.4 Understanding data consistency
6.4
153
Programming concepts
6.5 Programming language
A communication request from an HMI device or another CPU can also interrupt execution of
the program cycle OB. The communication requests can also cause issues with data
consistency. The CPU ensures that the elementary data types are always read and written
consistently by the user program instructions. Because the user program is interrupted
periodically by communications, it is not possible to guarantee that multiple values in the
CPU will all be updated at the same time by the HMI. For example, the values displayed on a
given HMI screen could be from different scan cycles of the CPU.
The PtP (Point-to-Point) instructions, PROFINET instructions (such as TSEND_C and
TRCV_C), PROFINET Distributed I/O instructions , and PROFIBUS Distributed I/O
Instructions (Page 274) transfer buffers of data that could be interrupted. Ensure the data
consistency for the buffers of data by avoiding any read or write operation to the buffers in
both the program cycle OB and an interrupt OB. If it is necessary to modify the buffer values
for these instructions in an interrupt OB, use a DIS_AIRT instruction to delay any interruption
(an interrupt OB or a communication interrupt from an HMI or another CPU) until an
EN_AIRT instruction is executed.
Note
The use of the DIS_AIRT instruction delays the processing of interrupt OBs until the
EN_AIRT instruction is executed, affecting the interrupt latency (time from an event to the
time when the interrupt OB is executed) of your user program.
6.5
Programming language
STEP 7 provides the following standard programming languages for S7-1200:
LAD (ladder logic) is a graphical programming language. The representation is based on
circuit diagrams (Page 155).
FBD (Function Block Diagram) is a programming language that is based on the graphical
logic symbols used in Boolean algebra (Page 156).
SCL (structured control language) is a text-based, high-level programming language
(Page 156).
When you create a code block, you select the programming language to be used by that
block.
Your user program can utilize code blocks created in any or all of the programming
languages.
154
Programming concepts
6.5 Programming language
6.5.1
To create the logic for complex operations, you can insert branches to create the logic for
parallel circuits. Parallel branches are opened downwards or are connected directly to the
power rail. You terminate the branches upwards.
LAD provides "box" instructions for a variety of functions, such as math, timer, counter, and
move.
STEP 7 does not limit the number of instructions (rows and columns) in a LAD network.
Note
Every LAD network must terminate with a coil or a box instruction.
Consider the following rules when creating a LAD network:
You cannot create a branch that could result in a power flow in the reverse direction.
$
&
'
&
155
Programming concepts
6.5 Programming language
6.5.2
6.5.3
SCL
Structured Control Language (SCL) is a high-level, PASCAL-based programming language
for the SIMATIC S7 CPUs. SCL supports the block structure of STEP 7 (Page 148). You can
also include program blocks written in SCL with program blocks written in LAD and FBD.
SCL instructions use standard programming operators, such as for assignment (:=),
mathematical functions (+ for addition, - for subtraction, * for multiplication, and / for division).
SCL also uses standard PASCAL program control operations, such as IF-THEN-ELSE,
CASE, REPEAT-UNTIL, GOTO and RETURN. You can use any PASCAL reference for
syntactical elements of the SCL programming language. Many of the other instructions for
SCL, such as timers and counters, match the LAD and FBD instructions. For more
information about specific instructions, refer to the specific instructions in the chapters for
Basic instructions (Page 175) and Extended instructions (Page 247).
You can designate any type of block (OB, FB, or FC) to use the SCL programming language
at the time you create the block. STEP 7 provides an SCL program editor that includes the
following elements:
Interface section for defining the parameters of the code block
Code section for the program code
Instruction tree that contains the SCL instructions supported by the CPU
You enter the SCL code for your instruction directly in the code section. For more complex
instructions, simply drag the SCL instructions from the instruction tree and drop them into
your program. You can also use any text editor to create an SCL program and then import
that file into STEP 7.
156
Programming concepts
6.5 Programming language
In the section of the SCL code block you can declare the following types of parameters:
Input, Output, InOut, and Ret_Val: These parameters define the input tags, output tags,
and return value for the code block. The tag name that you enter here is used locally
during the execution of the code block. You typically would not use the global tag name in
the tag table.
Static (FBs only; the illustration above is for an FC): Static tags are used for storage of
static intermediate results in the instance data block. Static data is retained until
overwritten, which may be after several cycles. The names of the blocks, which are called
in this code block as multi-instance, are also stored in the static local data.
Temp: These parameters are the temporary tags that are used during the execution of
the code block.
If you call the SCL code block from another code block, the parameters of the SCL code
block appear as inputs or outputs.
In this example, the tags for "Start" and "On" (from the project tag table) correspond to
"StartStopSwitch" and "RunYesNo" in the declaration table of the SCL program.
157
Programming concepts
6.5 Programming language
The evaluation of the expression occurs in a certain order, which is defined by the following
factors:
Every operator has a pre-defined priority, with the highest-priority operation performed
first.
For operators with equal priority, the operators are processed in a left-to-right sequence.
You use parentheses to designate a series of operators to be evaluated together.
The result of an expression can be used either for assigning a value to a tag used by your
program, as a condition to be used by a control statement, or as parameters for another SCL
instruction or for calling a code block.
Table 6- 2
Operators in SCL
Type
Operation
Operator
Priority
Parentheses
(Expression)
(,)
Math
Power
**
Multiplication
Division
Modulo
MOD
Comparison
Bit logic
Assignment
Addition
Subtraction
Less than
<
<=
Greater than
>
>=
Equal to
Not equal to
<>
Negation (unary)
NOT
AND or &
XOR
OR logic operation
OR
10
Assignment
:=
11
As a high-level programming language, SCL uses standard statements for basic tasks:
Assignment statement: :=
Mathematical functions: +, -, *, and /
Addressing of global variables (tags): "<tag name>" (Tag name or data block name
enclosed in double quotes)
Addressing of local variables: #<variable name> (Variable name preceded by "#" symbol)
158
Programming concepts
6.5 Programming language
The following examples show different expressions for different uses.
"C" := #A+#B;
"Data_block_1".Tag := #A;
Arithmetic operators can process various numeric data types. The data type of the result is
determined by the data type of the most-significant operands. For example, a multiplication
operation that uses an INT operand and a REAL operand yields a REAL value for the result.
Control statements
A control statement is a specialized type of SCL expression that performs the following
tasks:
Program branching
Repeating sections of the SCL program code
Jumping to other parts of the SCL program
Conditional execution
The SCL control statements include IF-THEN, CASE-OF, FOR-TO-DO, WHILE-DO,
REPEAT-UNTIL, CONTINUE, GOTO, and RETURN.
A single statement typically occupies one line of code. You can enter multiple statements on
one line, or you can break a statement into several lines of code to make the code easier to
read. Separators (such as tabs, line breaks and extra spaces) are ignored during the syntax
check. An END statement terminates the control statement.
The following examples show a FOR-TO-DO control statement. (Both forms of coding are
syntactically valid.)
FOR x := 0 TO max DO sum := sum + value(x); END_FOR;
FOR x := 0 TO max DO
sum := sum + value(x);
END_FOR;
A control statement can also be provided with a label. A label is set off by a colon at the
beginning of the statement:
Label: <Statement>;
The STEP 7 online help provides a complete SCL programming language reference.
159
Programming concepts
6.5 Programming language
Conditions
A condition is a comparison expression or a logical expression whose result is of type BOOL
(with the value of either TRUE or FALSE). The following example shows conditions of
various types.
#Temperature > 50
#Counter <= 100
#CHAR1 < 'S'
(#Alpha <> 12) AND NOT #Beta
Relational expression
5 + #Alpha
Arithmetic expression
Addressing
As with LAD and FBD, SCL allows you to use either tags (symbolic addressing) or absolute
addresses in your user program. SCL also allows you to use a variable as an array index.
Absolute addressing
I0.0
MB100
Symbolic addressing
"PLC_Tag_1"
"Data_block_1".Tag_1
"Data_block_1".MyArray[#i]
160
Programming concepts
6.5 Programming language
PEEK(area:=_in_,
dbNumber:=_in_,
byteOffset:=_in_);
PEEK_DWORD(area:=_in_,
dbNumber:=_in_,
byteOffset:=_in_);
PEEK_BOOL(area:=_in_,
dbNumber:=_in_,
byteOffset:=_in_,
bitOffset:=_in_);
POKE(area:=_in_,
dbNumber:=_in_,
byteOffset:=_in_,
value:=_in_);
161
Programming concepts
6.5 Programming language
POKE_BOOL(area:=_in_,
dbNumber:=_in_,
byteOffset:=_in_,
bitOffset:=_in_,
value:=_in_);
POKE_BLK(area_src:=_in_,
dbNumber_src:=_in_,
byteOffset_src:=_in_,
area_dest:=_in_,
dbNumber_dest:=_in_,
byteOffset_dest:=_in_,
count:=_in_);
Example:
POKE_BOOL(area:=16#84, dbNumber:=2,
byteOffset:=3, bitOffset:=5,
value:=0);
Example:
POKE_BLK(area_src:=16#84,
dbNumber_src:=#src_db,
byteOffset_src:=#src_byte,
area_dest:=16#84,
dbNumber_dest:=#src_db,
byteOffset_dest:=#src_byte,
count:=10);
For PEEK and POKE instructions, the following values for the "area", "area_src" and
"area_dest" parameters are applicable. For areas other than data blocks, the dbNumber
parameter must be 0.
16#81
16#82
16#83
16#84
DB
Call as multi-instance
"MyDB"(MyInput:=10, MyInOut:="Tag1");
<FC name> (Parameter list)
Standard call
Call in an expression
"MyFC"(MyInput:=10, MyInOut:="Tag1");
162
Programming concepts
6.5 Programming language
You can also drag blocks from the navigation tree to the SCL program editor, and complete
the parameter assignment.
6.5.4
Program editor
Inputs/outputs
Operands
Data type
LAD
EN, ENO
Power flow
Bool
FBD
EN
Bool
ENO
Power Flow
Bool
EN1
TRUE, FALSE
Bool
ENO2
TRUE, FALSE
Bool
SCL
1
2.
The use of ENO with the SCL code block is optional. You must configure the SCL compiler to set ENO when the code
block finishes.
163
Programming concepts
6.6 Protection
See also
OK and Not OK instructions (Page 197)
6.6
Protection
6.6.1
164
Programming concepts
6.6 Protection
Security level
Access restrictions
No protection
Write protection
Allows HMI access and all forms of PLC-to-PLC communications without password-protection.
Password is required for modifying (writing to) the CPU and for changing the CPU mode
(RUN/STOP).
Read/write protection
Allows HMI access and all forms of PLC-to-PLC communications without password-protection.
Password is required for reading the data in the CPU, for modifying (writing to) the CPU, and for
changing the CPU mode (RUN/STOP).
6.6.2
Know-how protection
Know-how protection allows you to prevent one or more code blocks (OB, FB, FC, or DB) in
your program from unauthorized access. You create a password to limit access to the code
block. The password-protection prevents unauthorized reading or modification of the code
block. Without the password, you can read only the following information about the code
block:
Block title, block comment, and block properties
Transfer parameters (IN, OUT, IN_OUT, Return)
Call structure of the program
Global tags in the cross references (without information on the point of use), but local
tags are hidden
165
Programming concepts
6.6 Protection
When you configure a block for "know-how" protection, the code within the block cannot be
accessed except after entering the password.
Use the "Properties" task card of the code block to configure the know-how protection for
that block. After opening the code block, select "Protection" from Properties.
6.6.3
Copy protection
An additional security feature allows you to bind the program or code blocks for use with a
specific memory card or CPU. This feature is especially useful for protecting your intellectual
property. When you bind a program or block to a specific device, you restrict the program or
code block for use only with a specific memory card or CPU. This feature allows you to
distribute a program or code block electronically (such as over the Internet or through email)
or by sending a memory cartridge.
166
Programming concepts
6.6 Protection
Use the "Properties" task card of the code block to bind the block to a specific CPU or
memory card.
1. After opening the code block, select "Protection".
2. From the drop-down list under "Copy protection" task, select the option to bind the code
block either to a memory card or to a specific CPU.
3. Select the type of copy protection and enter the serial number for the memory card or
CPU.
Note
The serial number is case-sensitive.
167
Programming concepts
6.7 Downloading the elements of your program
6.7
You can download your project from the programming device to your CPU from any of the
following locations:
"Project tree": Right-click the program element, and then click the context-sensitive
"Download" selection.
"Online" menu: Click the "Download to device" selection.
Toolbar: Click the "Download to device" icon.
6.8
6.8.1
168
Programming concepts
6.8 Uploading from the CPU
Note
You can copy the program blocks from the online CPU to an existing program. The
"Program-blocks" folder of the offline project does not have to be empty. However, the
existing program will be deleted and replaced by the user program from the online CPU.
169
Programming concepts
6.9 Debugging and testing the program
6.8.2
6.9
6.9.1
Editor
Monitor
Modify
Force
Watch table
Yes
Yes
No
Force table
Yes
No
Yes
Program editor
Yes
Yes
No
Tag table
Yes
No
No
DB editor
Yes
No
No
Monitoring with a
watch table
Refer to the "Online and diagnostics" chapter for more information about monitoring and
modifying data in the CPU (Page 682).
6.9.2
170
Programming concepts
6.9 Debugging and testing the program
With a watch table, you can monitor and interact with the CPU as it executes the user
program. You can display or change values not only for the tags of the code blocks and data
blocks, but also for the memory areas of the CPU, including the inputs and outputs (I and Q),
peripheral inputs (I:P), bit memory (M), and data blocks (DB).
With the watch table, you can enable the physical outputs (Q:P) of a CPU in STOP mode.
For example, you can assign specific values to the outputs when testing the wiring for the
CPU.
STEP 7 also provides a force table for "forcing" a tag to a specific value. For more
information about forcing, see the section on forcing values in the CPU (Page 689) in the
"Online and Diagnostics" chapter.
Note
The force values are stored in the CPU and not in the watch table.
You cannot force an input (or "I" address). However, you can force a peripheral input. To
force a peripheral input, append a ":P" to the address (for example: "On:P").
6.9.3
171
Programming concepts
6.9 Debugging and testing the program
Table 6- 6
6.9.4
Column
Description
Object
Name of the object that uses the lower-level objects or that is being used by the
lower-level objects
Quantity
Number of uses
Location
Property
Special properties of referenced objects, for example, the tag names in multi-instance
declarations
as
Access
Type of access, whether access to the operand is read access (R) and/or write
access (W)
Address
Type
Path
172
Programming concepts
6.9 Debugging and testing the program
You can also perform a consistency check to show time stamp conflicts. Changing the time
stamp of a block during or after the program is generated can lead to time stamp conflicts,
which in turn cause inconsistencies among the blocks that are calling and being called.
Most time stamp and interface conflicts can be corrected by recompiling the code blocks.
If compilation fails to clear up inconsistencies, use the link in the "Details" column to go to
the source of the problem in the program editor. You can then manually eliminate any
inconsistencies.
Any blocks marked in red must be recompiled.
173
Programming concepts
6.9 Debugging and testing the program
174
Basic instructions
7.1
Bit logic
7.1.1
LAD contacts
Table 7- 1
LAD
Table 7- 2
Description
Normally open and normally closed contacts: You can connect contacts
to other contacts and create your own combination logic. If the input bit
you specify uses memory identifier I (input) or Q (output), then the bit
value is read from the process-image register. The physical contact
signals in your control process are wired to I terminals on the PLC. The
CPU scans the wired input signals and continuously updates the
corresponding state values in the process-image input register.
You can specify an immediate read of a physical input using ":P"
following the I offset (example: "%I3.4:P"). For an immediate read, the bit
data values are read directly from the physical input instead of the
process image. An immediate read does not update the process image.
Parameter
Data type
Description
IN
Bool
Assigned bit
The Normally Open contact is closed (ON) when the assigned bit value is equal to 1.
The Normally Closed contact is closed (ON) when the assigned bit value is equal to 0.
Contacts connected in series create AND logic networks.
Contacts connected in parallel create OR logic networks.
175
Basic instructions
7.1 Bit logic
Description
All inputs of an AND box must be TRUE for the output to be TRUE.
out := in1 OR
in2;
An odd number of the inputs of an XOR box must be TRUE for the output
to be TRUE.
For SCL: You must assign the result of the operation to a variable to be used for another statement.
Table 7- 4
Parameter
Data type
Description
IN1, IN2
Bool
Input bit
176
Basic instructions
7.1 Bit logic
SCL
NOT
Description
For FBD programming, you can drag the "Negate binary input" tool
from the "Favorites" toolbar or instruction tree and then drop it on an
input or output to create a logic inverter on that box connector.
The LAD NOT contact inverts the logical state of power flow input.
If there is no power flow into the NOT contact, then there is power
flow out.
If there is power flow into the NOT contact, then there is no power
flow out.
SCL
out := <Boolean
expression>;
out := NOT
<Boolean
expression>;
Table 7- 7
Description
In FBD programming, LAD coils are transformed into
assignment (= and /=) boxes where you specify a bit
address for the box output. Box inputs and outputs can be
connected to other box logic or you can enter a bit
address.
You can specify an immediate write of a physical output
using ":P" following the Q offset (example: "%Q3.4:P").
For an immediate write, the bit data values are written to
the process image output and directly to physical output.
Parameter
Data type
Description
OUT
Bool
Assigned bit
177
Basic instructions
7.1 Bit logic
If there is power flow through an output coil or an FBD "=" box is enabled, then the output
bit is set to 1.
If there is no power flow through an output coil or an FBD "=" assignment box is not
enabled, then the output bit is set to 0.
If there is power flow through an inverted output coil or an FBD "/=" box is enabled, then
the output bit is set to 0.
If there is no power flow through an inverted output coil or an FBD "/=" box is not enabled,
then the output bit is set to 1.
7.1.2
S and R instructions
FBD
SCL
Description
Not available
Not available
For LAD and FBD: These instructions can be placed anywhere in the network.
For SCL: You must write code to replicate this function within your application.
Table 7- 9
Parameter
Data type
Description
Bool
OUT
Bool
178
Basic instructions
7.1 Bit logic
SCL
Description
Not available
Not available
For LAD and FBD: These instructions must be the right-most instruction in a branch.
For SCL: You must write code to replicate this function within your application.
Table 7- 11
Parameter
Data type
Description
OUT
Bool
Constant (UInt)
RS and SR instructions
SCL
Description
Not available
RS is a set dominant latch where the set dominates. If the set (S1) and reset (R)
signals are both true, the output address OUT will be 1.
Not available
SR is a reset dominant latch where the reset dominates. If the set (S) and reset
(R1) signals are both true, the output address OUT will be 0.
For LAD and FBD: These instructions must be the right-most instruction in a branch.
For SCL: You must write code to replicate this function within your application.
179
Basic instructions
7.1 Bit logic
Table 7- 13
Parameter
Data type
S, S1
Bool
R, R1
Bool
OUT
Bool
Bool
Description
The OUT parameter specifies the bit address that is set or reset. The optional OUT output Q
reflects the signal state of the "OUT" address.
Instruction
RS
SR
7.1.3
Table 7- 14
LAD
S1
"OUT" bit
Previous state
R1
Previous state
SCL
Description
Not available
LAD: The state of this contact is TRUE when a positive transition (OFFto-ON) is detected on the assigned "IN" bit. The contact logic state is
then combined with the power flow in state to set the power flow out
state. The P contact can be located anywhere in the network except the
end of a branch.
FBD: The output logic state is TRUE when a positive transition (OFFto-ON) is detected on the assigned input bit. The P box can only be
located at the beginning of a branch.
Not available
LAD: The state of this contact is TRUE when a negative transition (ONto-OFF) is detected on the assigned input bit. The contact logic state is
then combined with the power flow in state to set the power flow out
state. The N contact can be located anywhere in the network except
the end of a branch.
FBD: The output logic state is TRUE when a negative transition (ON-toOFF) is detected on the assigned input bit. The N box can only be
located at the beginning of a branch.
180
Basic instructions
7.1 Bit logic
LAD
FBD
SCL
Description
Not available
LAD: The assigned bit "OUT" is TRUE when a positive transition (OFFto-ON) is detected on the power flow entering the coil. The power flow
in state always passes through the coil as the power flow out state. The
P coil can be located anywhere in the network.
FBD: The assigned bit "OUT" is TRUE when a positive transition (OFFto-ON) is detected on the logic state at the box input connection or on
the input bit assignment if the box is located at the start of a branch.
The input logic state always passes through the box as the output logic
state. The P= box can be located anywhere in the branch.
Not available
LAD: The assigned bit "OUT" is TRUE when a negative transition (ONto-OFF) is detected on the power flow entering the coil. The power flow
in state always passes through the coil as the power flow out state. The
N coil can be located anywhere in the network.
FBD: The assigned bit "OUT" is TRUE when a negative transition (ONto-OFF) is detected on the logic state at the box input connection or on
the input bit assignment if the box is located at the start of a branch.
The input logic state always passes through the box as the output logic
state. The N= box can be located anywhere in the branch.
For SCL: You must write code to replicate this function within your application.
Table 7- 15
LAD / FBD
Description
Not available
The Q output power flow or logic state is TRUE when a positive transition
(OFF-to-ON) is detected on the CLK input state (FBD) or CLK power flow
in (LAD).
In LAD, the P_TRIG instruction cannot be located at the beginning or end
of a network. In FBD, the P_TRIG instruction can be located anywhere
except the end of a branch.
Not available
The Q output power flow or logic state is TRUE when a negative transition
(ON-to-OFF) is detected on the CLK input state (FBD) or CLK power flow
in (LAD).
In LAD, the N_TRIG instruction cannot be located at the beginning or end
of a network. In FBD, the N_TRIG instruction can be located anywhere
except the end of a branch.
For SCL: You must write code to replicate this function within your application.
Table 7- 16
Data types for the parameters (P and N contacts/coils, P=, N=, P_TRIG and N_TRIG)
Parameter
Data type
Description
M_BIT
Bool
IN
Bool
OUT
Bool
CLK
Bool
Bool
181
Basic instructions
7.2 Timers
All edge instructions use a memory bit (M_BIT) to store the previous state of the input signal
being monitored. An edge is detected by comparing the state of the input with the state of
the memory bit. If the states indicate a change of the input in the direction of interest, then an
edge is reported by writing the output TRUE. Otherwise, the output is written FALSE.
Note
Edge instructions evaluate the input and memory-bit values each time they are executed,
including the first execution. You must account for the initial states of the input and memory
bit in your program design either to allow or to avoid edge detection on the first scan.
Because the memory bit must be maintained from one execution to the next, you should use
a unique bit for each edge instruction, and you should not use this bit any other place in your
program. You should also avoid temporary memory and memory that can be affected by
other system functions, such as an I/O update. Use only M, global DB, or Static memory (in
an instance DB) for M_BIT memory assignments.
7.2
Timers
You use the timer instructions to create programmed time delays. The number of timers that
you can use in your user program is limited only by the amount of memory in the CPU. Each
timer uses a 16 byte IEC_Timer data type DB structure to store timer data that is specified at
the top of the box or coil instruction. STEP 7 automatically creates the DB when you insert
the instruction.
Table 7- 17
Timer instructions
LAD coils
SCL
"IEC_Timer_0_DB".TP(
IN:=_bool_in_,
PT:=_time_in_,
Q=>_bool_out_,
ET=>_time_out_);
Description
"IEC_Timer_0_DB".TON (
IN:=_bool_in_,
PT:=_time_in_,
Q=>_bool_out_,
ET=>_time_out_);
"IEC_Timer_0_DB".TOF (
IN:=_bool_in_,
PT:=_time_in_,
Q=>_bool_out_,
ET=>_time_out_);
182
Basic instructions
7.2 Timers
LAD coils
SCL
"IEC_Timer_0_DB".TONR (
IN:=_bool_in_,
R:=_bool_in_
PT:=_time_in_,
Q=>_bool_out_,
ET=>_time_out_);
Description
FBD only:
FBD only:
Table 7- 18
Parameter
Data type
Description
Box: IN
Coil: Power flow
Bool
Bool
Box: PT
Coil: "PRESET_Tag"
Time
Box: Q
Coil: DBdata.Q
Bool
Box: ET
Coil: DBdata.ET
Time
Timer box: ET (elapsed time) box output or ET time value in the timer DB
data
Timer coil: you can only address the ET time value in the timer DB data.
183
Basic instructions
7.2 Timers
Table 7- 19
Timer
Changes in the PT and IN box parameters and the corresponding coil parameters
TP
Changing IN to FALSE, while the timer runs, resets and stops the timer.
Changing IN to TRUE, while the timer runs, resets and stops the timer.
Changing PT has no effect while the timer runs, but has an effect when the timer resumes.
Changing IN to FALSE, while the timer runs, stops the timer but does not reset the timer. Changing
IN back to TRUE will cause the timer to start timing from the accumulated time value.
TON
TOF
TONR
PT (preset time) and ET (elapsed time) values are stored in the specified IEC_TIMER DB
data as signed double integers that represent milliseconds of time. TIME data uses the T#
identifier and can be entered as a simple time unit (T#200ms or 200) and as compound time
units like T#2s_200ms.
Table 7- 20
Data type
TIME
1
The negative range of the TIME data type shown above cannot be used with the timer instructions. Negative PT (preset
time) values are set to zero when the timer instruction is executed. ET (elapsed time) is always a positive value.
The pulse timer is started on a 0 to 1 transition of the Tag_Input bit value. The timer runs for
the time specified by Tag_Time time value.
As long as the timer runs, the state of DB1.MyIEC_Timer.Q=1 and the Tag_Output value=1.
When the Tag_Time value has elapsed, then DB1.MyIEC_Timer.Q=0 and the Tag_Output
value=0.
184
Basic instructions
7.2 Timers
Timer
Timing diagram
,1
(7
37
4
37
37
37
,1
(7
37
37
37
185
Basic instructions
7.2 Timers
Timer
Timing diagram
,1
(7
37
37
37
,1
(7
37
Note
In the CPU, no dedicated resource is allocated to any specific timer instruction. Instead,
each timer utilizes its own timer structure in DB memory and a continuously-running internal
CPU timer to perform timing.
When a timer is started due to an edge change on the input of a TP, TON, TOF, or TONR
instruction, the value of the continuously-running internal CPU timer is copied into the
START member of the DB structure allocated for this timer instruction. This start value
remains unchanged while the timer continues to run, and is used later each time the timer is
updated. Each time the timer is started, a new start value is loaded into the timer structure
from the internal CPU timer.
When a timer is updated, the start value described above is subtracted from the current
value of the internal CPU timer to determine the elapsed time. The elapsed time is then
compared with the preset to determine the state of the timer Q bit. The ELAPSED and Q
members are then updated in the DB structure allocated for this timer. Note that the elapsed
time is clamped at the preset value (the timer does not continue to accumulate elapsed time
after the preset is reached).
186
Basic instructions
7.2 Timers
A timer update is performed when and only when:
A timer instruction (TP, TON, TOF, or TONR) is executed
The "ELAPSED" member of the timer structure in DB is referenced directly by an
instruction
The "Q" member of the timer structure in DB is referenced directly by an instruction
Timer programming
The following consequences of timer operation should be considered when planning and
creating your user program:
You can have multiple updates of a timer in the same scan. The timer is updated each
time the timer instruction (TP, TON, TOF, TONR) is executed and each time the
ELAPSED or Q member of the timer structure is used as a parameter of another
executed instruction. This is an advantage if you want the latest time data (essentially an
immediate read of the timer). However, if you desire to have consistent values throughout
a program scan, then place your timer instruction prior to all other instructions that need
these values, and use tags from the Q and ET outputs of the timer instruction instead of
the ELAPSED and Q members of the timer DB structure.
You can have scans during which no update of a timer occurs. It is possible to start your
timer in a function, and then cease to call that function again for one or more scans. If no
other instructions are executed which reference the ELAPSED or Q members of the timer
structure, then the timer will not be updated. A new update will not occur until either the
timer instruction is executed again or some other instruction is executed using ELAPSED
or Q from the timer structure as a parameter.
Although not typical, you can assign the same DB timer structure to multiple timer
instructions. In general, to avoid unexpected interaction, you should only use one timer
instruction (TP, TON, TOF, TONR) per DB timer structure.
Self-resetting timers are useful to trigger actions that need to occur periodically. Typically,
self-resetting timers are created by placing a normally-closed contact which references
the timer bit in front of the timer instruction. This timer network is typically located above
one or more dependent networks that use the timer bit to trigger actions. When the timer
expires (elapsed time reaches preset value), the timer bit is ON for one scan, allowing the
dependent network logic controlled by the timer bit to execute. Upon the next execution of
the timer network, the normally closed contact is OFF, thus resetting the timer and
clearing the timer bit. The next scan, the normally closed contact is ON, thus restarting
the timer. When creating self-resetting timers such as this, do not use the "Q" member of
the timer DB structure as the parameter for the normally-closed contact in front of the
timer instruction. Instead, use the tag connected to the "Q" output of the timer instruction
for this purpose. The reason to avoid accessing the Q member of the timer DB structure
is because this causes an update to the timer and if the timer is updated due to the
normally closed contact, then the contact will reset the timer instruction immediately. The
Q output of the timer instruction will not be ON for the one scan and the dependent
networks will not execute.
187
Basic instructions
7.2 Timers
188
Basic instructions
7.2 Timers
189
Basic instructions
7.3 Counters
7.3
Table 7- 22
Counters
Counter instructions
LAD / FBD
SCL
"IEC_Counter_0_DB".CTU(
CU:=_bool_in,
R:=_bool_in,
PV:=_int_in,
Q=>_bool_out,
CV=>_int_out);
"IEC_Counter_0_DB".CTD(
CD:=_bool_in,
LD:=_bool_in,
PV:=_int_in,
Q=>_bool_out,
CV=>_int_out);
"IEC_Counter_0_DB".CTUD(
CU:=_bool_in,
CD:=_bool_in,
R:=_bool_in,
LD:=_bool_in,
PV:=_int_in,
QU=>_bool_out,
QD=>_bool_out,
CV=>_int_out);
Description
Use the counter instructions to count internal program events and
external process events. Each counter uses a structure stored in a
data block to maintain counter data. You assign the data block when
the counter instruction is placed in the editor.
For LAD and FBD: Select the count value data type from the drop-down list below the instruction name.
Table 7- 23
Parameter
Data type1
Description
CU, CD
Bool
R (CTU, CTUD)
Bool
LD (CTD, CTUD)
Bool
PV
Q, QU
Bool
True if CV >= PV
QD
Bool
True if CV <= 0
CV
The numerical range of count values depends on the data type you select. If the count value is an unsigned integer
type, you can count down to zero or count up to the range limit. If the count value is a signed integer, you can count
down to the negative integer limit and count up to the positive integer limit.
190
Basic instructions
7.3 Counters
The number of counters that you can use in your user program is limited only by the amount
of memory in the CPU. Counters use the following amount of memory:
For SInt or USInt data types, the counter instruction uses 3 bytes.
For Int or UInt data types, the counter instruction uses 6 bytes.
For DInt or UDInt data types, the counter instruction uses 12 bytes.
These instructions use software counters whose maximum counting rate is limited by the
execution rate of the OB in which they are placed. The OB that the instructions are placed in
must be executed often enough to detect all transitions of the CU or CD inputs. For faster
counting operations, see the CTRL_HSC instruction (Page 337).
Note
When you place counter instructions in an FB, you can select the multi-instance DB option,
the counter structure names can be different with separate data structures, but the counter
data is contained in a single DB and does not require a separate DB for each counter. This
reduces the processing time and data storage necessary for the counters. There is no
interaction between the counter data structures in the shared multi-instance DB.
Counter
The CTU counter counts up by 1 when the value of parameter CU
changes from 0 to 1. The CTU timing diagram shows the operation for
an unsigned integer count value (where PV = 3).
Operation
&8
5
&9
191
Basic instructions
7.3 Counters
Table 7- 25
Counter
Operation
&9
Counter
Operation
/2$'
Table 7- 26
&'
&8
&'
&9
48
4'
192
Basic instructions
7.3 Counters
When you accept the defaults in the call options dialog after you place a counter instruction
in the program editor, you are automatically assigned an instance DB which cannot be made
retentive. To make your counter data retentive, you must either use a global DB or a Multiinstance DB.
IEC_Counter
INT
IEC_SCounter
SINT
IEC_DCounter
DINT
IEC_UCounter
UINT
IEC_USCounter
USINT
IEC_UDCounter
UDINT
1. In the "Retain" column, check the box so that this structure will be retentive.
Repeat this process to create structures for all the counters that you want to store in
this DB. You can either place each counter structure in a unique global DB, or you can
place multiple counter structures into the same global DB. You can also place other
static tags besides counters in this global DB. Placing multiple counter structures into
the same global DB allows you to reduce your overall number of blocks.
Rename the counter structures if desired.
2. Open the program block for editing where you want to place a retentive counter (OB, FC,
or FB).
3. Place the counter instruction at the desired location.
193
Basic instructions
7.3 Counters
4. When the call options dialog appears, click the cancel button. You should now see a new
counter instruction which has "???" both just above and just below the instruction name.
5. On the top of the new counter instruction, type the name (do not use the helper to
browse) of the global DB and counter structure that you created above (example:
"Data_block_3.Static_1"). This causes the corresponding preset and count value type to
be filled in (example: UInt for an IEC_UCounter structure).
IEC_Counter
SINT
IEC_SCounter
DINT
IEC_DCounter
UINT
IEC_UCounter
USINT
IEC_USCounter
UDINT
IEC_UDCounter
1. If necessary, open the FB interface editor (may have to click on the small arrow to
expand the view).
2. Under Static, locate the counter structure that was just created for you.
3. In the Retain column for this counter structure, change the selection to "Retain".
Whenever this FB is called later from another program block, an instance DB will be
created with this interface definition which contains the counter structure marked as
retentive.
194
Basic instructions
7.3 Counters
If the FB was created with the "Symbolic access only" box not checked:
1. Open the FB for edit.
2. Place the counter instruction at the desired location in the FB.
3. When the Call options dialog appears, click on the multi instance icon. The multi instance
option is only available if the instruction is being placed into an FB.
4. In the Call options dialog, rename the counter if desired.
5. Click OK. The counter instruction appears in the editor with type INT for the preset and
count value, and the IEC_COUNTER structure appears in the FB Interface under Static.
6. If desired, change the type in the counter instruction from INT to one of the other types.
The counter structure will change correspondingly.
Type shown in counter instruction (for preset Corresponding structure Type shown in FB
and count values)
interface
INT
IEC_Counter
SINT
IEC_SCounter
DINT
IEC_DCounter
UINT
IEC_UCounter
USINT
IEC_USCounter
UDINT
IEC_UDCounter
195
Basic instructions
7.4 Compare
7.4
Compare
7.4.1
Compare
Table 7- 27
Compare instructions
LAD
FBD
SCL
out := in1 = in2;
or
IF in1 = in2
THEN out := 1;
ELSE out := 0;
END_IF;
Description
Compares two values of the same data type. When the
LAD contact comparison is TRUE, then the contact is
activated. When the FBD box comparison is TRUE,
then the box output is TRUE.
For LAD and FBD: Click the instruction name (such as "==") to change the comparison type from the drop-down list.
Click the "???" and select data type from the drop-down list.
Table 7- 28
Parameter
Data type
Description
IN1, IN2
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, String, Char,
Time, DTL, Constant
Values to compare
Table 7- 29
Comparison descriptions
Relation type
<>
>=
<=
>
<
196
Basic instructions
7.4 Compare
7.4.2
Table 7- 30
LAD / FBD
SCL
out := IN_RANGE(min, val,
max);
Description
Tests whether an input value is in or out of a specified value range.
If the comparison is TRUE, then the box output is TRUE.
For LAD and FBD: Click the "???" and select the data type from the drop-down list.
Table 7- 31
Parameter
Data type1
Description
Comparator inputs
The input parameters MIN, VAL, and MAX must be the same data type.
The IN_RANGE comparison is true if: MIN <= VAL <= MAX
The OUT_RANGE comparison is true if: VAL < MIN or VAL > MAX
7.4.3
Table 7- 32
LAD
SCL
Description
Not available
Not available
For LAD and FBD: When the LAD contact is TRUE, the contact is activated and passes power flow. When the FBD box
is TRUE, then the box output is TRUE.
197
Basic instructions
7.5 Math
Table 7- 33
Parameter
Data type
Description
IN
Real, LReal
Input data
Table 7- 34
Operation
Instruction
OK
NOT_OK
A Real or LReal value is invalid if it is +/- INF (infinity), NaN (Not a Number), or if it is a denormalized value. A
denormalized value is a number very close to zero. The CPU substitutes a zero for a denormalized value in calculations.
See also
EN and ENO for LAD, FBD and SCL (Page 163)
7.5
Math
7.5.1
Calculate instruction
Table 7- 35
CALCULATE instruction
LAD / FBD
Table 7- 36
Description
The CALCULATE instruction lets you create a math function that
operates on inputs (IN1, IN2, .. INn) and produces the result at OUT,
according to the equation that you define.
Select a data type first. All inputs and the output must be the same
data type.
Parameter
SCL
Use the
standard SCL
math
expressions to
create the
equation.
Data type1
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord
OUT
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord
The IN and OUT parameters must be the same data type (with implicit conversions of the input parameters). For
example: A SINT value for an input would be converted to an INT or a REAL value if OUT is an INT or REAL
198
Basic instructions
7.5 Math
Click the calculator icon to open the dialog and define your math function. You enter your
equation as inputs (such as IN1 and IN2) and operations. When you click "OK" to save the
function, the dialog automatically creates the inputs for the CALCULATE instruction.
An example and a list of possible math operations you can include is shown at the bottom of
the editor.
Note
You also must create an input for any constants in your function. The constant value would
then be entered in the associated input for the CALCULATE instruction.
By entering constants as inputs, you can copy the CALCULATE instruction to other locations
in your user program without having to change the function. You then can change the values
or tags of the inputs for the instruction without modifying the function.
When CALCULATE is executed and all the individual operations in the calculation complete
successfully, then the ENO = 1. Otherwise, ENO = 0.
7.5.2
Table 7- 37
LAD / FBD
Description
:=
:=
:=
:=
in1
in1
in1
in1
+
*
/
in2;
in2;
in2;
in2;
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
199
Basic instructions
7.5 Math
Table 7- 38
Parameter
Data type1
IN1, IN2
OUT
To add an ADD or MUL input, click the "Create" icon or right-click on an input
stub for one of the existing IN parameters and select the "Insert input" command.
To remove an input, right-click on an input stub for one of the existing IN parameters (when
there are more than the original two inputs) and select the "Delete" command.
When enabled (EN = 1), the math instruction performs the specified operation on the input
values (IN1 and IN2) and stores the result in the memory address specified by the output
parameter (OUT). After the successful completion of the operation, the instruction sets ENO
= 1.
Table 7- 39
ENO
Description
No error
The Math operation result value would be outside the valid number range of the data type selected. The
least significant part of the result that fits in the destination size is returned.
Real/LReal: If one of the input values is NaN (not a number) then NaN is returned.
ADD Real/LReal: If both IN values are INF with different signs, this is an illegal operation and NaN is
returned.
SUB Real/LReal: If both IN values are INF with the same sign, this is an illegal operation and NaN is
returned.
MUL Real/LReal: If one IN value is zero and the other is INF, this is an illegal operation and NaN is
returned.
DIV Real/LReal: If both IN values are zero or INF, this is an illegal operation and NaN is returned.
7.5.3
Table 7- 40
LAD / FBD
ENO status
Modulo instruction
MOD instruction
SCL
out := in1 MOD in2;
Description
You can use the MOD instruction to return the remainder of an integer
division operation. The value at the IN1 input is divided by the value at
the IN2 input and the remainder is returned at the OUT output.
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
S7-1200 Programmable controller
200
Basic instructions
7.5 Math
Table 7- 41
Parameter
Data type1
Description
Modulo inputs
OUT
Modulo output
The IN1, IN2, and OUTparameters must be the same data type.
Table 7- 42
ENO
ENO values
Description
No error
7.5.4
Table 7- 43
LAD / FBD
Negation instruction
NEG instruction
SCL
Description
-(in);
The NEG instruction inverts the arithmetic sign of the value at parameter IN and stores
the result in parameter OUT.
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
Table 7- 44
Parameter
Data type1
Description
IN
OUT
Table 7- 45
ENO status
ENO
Description
No error
The resulting value is outside the valid number range of the selected data type.
Example for SInt: NEG (-128) results in +128 which exceeds the data type maximum.
201
Basic instructions
7.5 Math
7.5.5
Table 7- 46
LAD / FBD
Description
Increments a signed or unsigned integer number value:
IN_OUT value +1 = IN_OUT value
in_out := in_out - 1;
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
Table 7- 47
Parameter
Data type
Description
IN/OUT
Table 7- 48
ENO status
ENO
Description
No error
The resulting value is outside the valid number range of the selected data type.
Example for SInt: INC (+127) results in +128, which exceeds the data type maximum.
7.5.6
Table 7- 49
LAD / FBD
Description
Calculates the absolute value of a signed integer or real number at parameter
IN and stores the result in parameter OUT.
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
202
Basic instructions
7.5 Math
Table 7- 50
Description
IN
OUT
Parameter
Table 7- 51
ENO status
ENO
Description
No error
The math operation result value is outside the valid number range of the selected data type.
Example for SInt: ABS (-128) results in +128 which exceeds the data type maximum.
7.5.7
Table 7- 52
LAD / FBD
Description
out:= MAX(
in1:=_variant_in_,
in2:=_variant_in_
[,...in32]);
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
Table 7- 53
Parameter
Data type1
Description
IN1, IN2
[...IN32]
OUT
The IN1, IN2, and OUT parameters must be the same data type.
203
Basic instructions
7.5 Math
To add an input, click the "Create" icon or right-click on an input stub for one of
the existing IN parameters and select the "Insert input" command.
To remove an input, right-click on an input stub for one of the existing IN parameters (when
there are more than the original two inputs) and select the "Delete" command.
Table 7- 54
ENO status
ENO
Description
No error
7.5.8
Table 7- 55
LIMIT instruction
SCL
LIMIT(MN:=_variant_in_,
IN:=_variant_in_,
MX:=_variant_in_,
OUT:=_variant_out_);
Description
The Limit instruction tests if the value of parameter IN is inside the
value range specified by parameters MIN and MAX and if not,
clamps the value at MIN or MAX.
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
Table 7- 56
Description
OUT
Parameter
Limit instruction
LAD / FBD
The MN, IN, MX, and OUTparameters must be the same data type.
If the value of parameter IN is within the specified range, then the value of IN is stored in
parameter OUT. If the value of parameter IN is outside of the specified range, then the OUT
value is the value of parameter MIN (if the IN value is less than the MIN value) or the value
of parameter MAX (if the IN value is greater than the MAX value).
204
Basic instructions
7.5 Math
Table 7- 57
ENO status
ENO
Description
No error
Real: If one or more of the values for MIN, IN and MAX is NaN (Not a Number), then NaN is returned.
SCL examples:
MyVal := LIMIT(MN:=10,IN:=53, MX:=40); //Result: MyVal = 40
MyVal := LIMIT(MN:=10,IN:=37, MX:=40); //Result: MyVal = 37
MyVal := LIMIT(MN:=10,IN:=8, MX:=40); //Result: MyVal = 10
7.5.9
205
Basic instructions
7.5 Math
Table 7- 58
LAD / FBD
SCL
out := SQR(in);
or
out := in * in;
Description
Square: IN 2 = OUT
For example: If IN = 9, then OUT = 81.
For LAD and FBD: Click the "???" (by the instruction name) and select a data type from the drop-down menu.
For SCL: You can also use the basic SCL math operators to create the mathematical expressions.
Table 7- 59
Parameter
Data type
Description
IN, IN1
Inputs
IN2
OUT
Real, LReal
Outputs
Table 7- 60
ENO
ENO status
Instruction
Condition
Result (OUT)
All
No error
Valid result
SQR
+INF
+NaN
IN is negative
-NaN
-NaN
IN is +INF or +NaN
+INF or +NaN
SQRT
LN
EXP
SIN, COS, TAN
ASIN, ACOS
+INF
IN is +/- NaN
+/- NaN
+NaN
IN is +/- NaN
+/- NaN
IN is +/- NaN
+/- NaN
FRAC
+NaN
EXPT
+INF
+NaN
ATAN
206
Basic instructions
7.6 Move
ENO
Instruction
Condition
Result (OUT)
+NaN
7.6
Move
7.6.1
Table 7- 61
LAD / FBD
Description
out1 := in;
MOVE_BLK(
in:=_variant_in,
count:=_uint_in,
out=>_variant_out);
UMOVE_BLK(
in:=_variant_in,
count:=_uint_in,
out=>_variant_out);
MOVE instruction: To add another output in LAD or FBD, click the "Create" icon by the output parameter. For SCL, use
multiple assignment statements. You might also use one of the loop constructions.
Table 7- 62
Parameter
Data type
Description
IN
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word,
DWord, Char, Array, Struct, DTL, Time
Source address
OUT
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word,
DWord, Char, Array, Struct, DTL, Time
Destination address
207
Basic instructions
7.6 Move
To add MOVE outputs, click the "Create" icon or right-click on an output stub for
one of the existing OUT parameters and select the "Insert output" command.
To remove an output, right-click on an output stub for one of the existing OUT parameters
(when there are more than the original two outputs) and select the "Delete" command.
Table 7- 63
Parameter
Data type
Description
IN
COUNT
UInt
OUT
Note
Rules for data copy operations
To copy the Bool data type, use SET_BF, RESET_BF, R, S, or output coil (LAD)
(Page 178)
To copy a single elementary data type, use MOVE
To copy an array of an elementary data type, use MOVE_BLK or UMOVE_BLK
To copy a structure, use MOVE
To copy a string, use S_MOVE (Page 254)
To copy a single character in a string, use MOVE
The MOVE_BLK and UMOVE_BLK instructions cannot be used to copy arrays or
structures to the I, Q, or M memory areas.
MOVE_BLK and UMOVE_BLK instructions differ in how interrupts are handled:
Interrupt events are queued and processed during MOVE_BLK execution. Use the
MOVE_BLK instruction when the data at the move destination address is not used within
an interrupt OB subprogram or, if used, the destination data does not have to be
consistent. If a MOVE_BLK operation is interrupted, then the last data element moved is
complete and consistent at the destination address. The MOVE_BLK operation is
resumed after the interrupt OB execution is complete.
Interrupt events are queued but not processed until UMOVE_BLK execution is complete.
Use the UMOVE_BLK instruction when the move operation must be completed and the
destination data consistent, before the execution of an interrupt OB subprogram. For
more information, see the section on data consistency (Page 153).
ENO is always true following execution of the MOVE instruction.
208
Basic instructions
7.6 Move
Table 7- 64
7.6.2
ENO status
ENO
Condition
Result
No error
Table 7- 65
LAD / FBD
SCL
value :=
member[index];
Description
member[index]
:= value;
FieldRead reads the array element with the index value INDEX
from the array whose first element in specified by the MEMBER
parameter. The value of the array element is transferred to the
location specified at the VALUE parameter.
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
209
Basic instructions
7.6 Move
Table 7- 66
Data type
Description
Index
Input
DInt
Member 1
Input
Location of the first element in a onedimension array defined in a global data block
or block interface.
For example: If the array index is specified as
[-2..4], then the index of the first element is -2
and not 0.
Value 1
Out
The data type of the array element specified by the MEMBER parameter and the VALUE parameter must have the
same data type.
The logic with the variable array index is equivalent to the former method using the
FieldRead instruction:
FieldWrite and FieldRead instructions can be replaced with variable array indexing logic.
210
Basic instructions
7.6 Move
SCL has no FieldRead or FieldWrite instructions, but supports indirect addressing of an
array with a variable:
#Tag_1 := "Data_block_1".Bool_Array[#Index];
7.6.3
Table 7- 67
LAD / FBD
Table 7- 68
Fill instructions
FILL_BLK and UFILL_BLK instructions
SCL
Description
FILL_BLK(
in:=_variant_in,
count:=int,
out=>_variant_out);
UFILL_BLK(
in:=_variant_in,
count:=int
out=>_variant_out);
Parameter
Data type
Description
IN
SInt, Int, DIntT, USInt, UInt, UDInt, Real, LReal, Byte, Word, Data source address
DWord
COUNT
USInt, UInt
OUT
SInt, Int, DIntT, USInt, UInt, UDInt, Real, LReal, Byte, Word, Data destination address
DWord
Note
Rules for data fill operations
To fill with the BOOL data type, use SET_BF, RESET_BF, R, S, or output coil (LAD)
To fill with a single elementary data type, use MOVE
To fill an array with an elementary data type, use FILL_BLK or UFILL_BLK
To fill a single character in a string, use MOVE
The FILL_BLK and UFILL_BLK instructions cannot be used to fill arrays in the I, Q, or M
memory areas.
The FILL_BLK and UFILL_BLK instructions copy the source data element IN to the
destination where the initial address is specified by the parameter OUT. The copy process
repeats and a block of adjacent addresses is filled until the number of copies is equal to the
COUNT parameter.
211
Basic instructions
7.6 Move
FILL_BLK and UFILL_BLK instructions differ in how interrupts are handled:
Interrupt events are queued and processed during FILL_BLK execution. Use the
FILL_BLK instruction when the data at the move destination address is not used within an
interrupt OB subprogram or, if used, the destination data does not have to be consistent.
Interrupt events are queued but not processed until UFILL_BLK execution is complete.
Use the UFILL_BLK instruction when the move operation must be completed and the
destination data consistent, before the execution of an interrupt OB subprogram.
Table 7- 69
7.6.4
Table 7- 70
LAD / FBD
ENO status
ENO
Condition
Result
No error
Swap instruction
SWAP instruction
SCL
Description
out := SWAP(in);
Reverses the byte order for two-byte and four-byte data elements. No change
is made to the bit order within each byte. ENO is always TRUE following
execution of the SWAP instruction.
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
Table 7- 71
Parameter
Description
IN
Word, DWord
OUT
Word, DWord
Example 1
Parameter IN = MB0
(before execution)
Address
MB0
MB1
MB4
MB5
W#16#1234
12
34
34
12
WORD
MSB
LSB
MSB
LSB
212
Basic instructions
7.7 Convert
Example 2
Parameter IN = MB0
(before execution)
Address
MB0
MB1
MB2
MB3
MB4
MB5
MB6
MB7
DW#16#
12345678
12
34
56
78
78
56
34
12
DWORD
MSB
LSB
MSB
7.7
Convert
7.7.1
CONV instruction
Table 7- 72
LAD / FBD
LSB
Description
For LAD and FBD: Click the "???" and select the data types from the drop-down menu.
For SCL: Construct the conversion instruction by identifying the data type for the input parameter (in) and output
parameter (out). For example, DWORD_TO_REAL converts a DWord value to a Real value.
Table 7- 73
Parameter
Description
string1,
IN
Bit
SInt, USInt, Int, UInt, DInt, UDInt, Real, LReal,
BCD16, BCD32
Input value
OUT
Bit string1, SInt, USInt, Int, UInt, DInt, UDInt, Real, LReal,
BCD16, BCE32
The instruction does not allow you to select Bit strings (Byte, Word, DWord). To enter an operand of data type Byte,
Word, or DWord for a parameter of the instruction, select an unsigned integer with the same bit length. For example,
select USInt for a Byte, UInt for a Word, or UDInt for a DWord.
After you select the (convert from) data type, a list of possible conversions is shown in the
(convert to) dropdown list. Conversions from and to BCD16 are restricted to the Int data
type. Conversions from and to BCD32 are restricted to the DInt data type.
213
Basic instructions
7.7 Convert
Table 7- 74
ENO status
ENO
Description
Result OUT
No error
Valid result
7.7.2
Data type
Instruction
BOOL_TO_BYTE, BOOL_TO_WORD,
BOOL_TO_DWORD, BOOL_TO_INT,
BOOL_TO_DINT
BYTE_TO_BOOL
Result
BYTE_TO_WORD, BYTE_TO_DWORD
BYTE_TO_SINT, BYTE_TO_USINT
BYTE_TO_INT, BYTE_TO_UINT,
BYTE_TO_DINT, BYTE_TO_UDINT
WORD_TO_BOOL
Bool
Byte
Word
DWord
WORD_TO_BYTE
WORD _TO_DWORD
DWORD_TO_BOOL
DWORD_TO_BYTE, DWORD_TO_WORD,
DWORD_TO_SINT, DWORD_TO_USINT,
DWORD_TO_INT, DWORD_TO_UINT
DWORD_TO_DINT, DWORD_TO_UDINT,
DWORD_TO_REAL
214
Basic instructions
7.7 Convert
Table 7- 76
Data type
SInt
USInt
Table 7- 77
Data type
Int
Result
SINT_TO_BYTE
SINT_TO_WORD, SINT_TO_DWORD,
SINT_TO_INT, SINT_TO_DINT
SINT_TO_USINT, SINT_TO_UINT,
SINT_TO_UDINT, SINT_TO_REAL,
SINT_TO_LREAL, SINT_TO_CHAR,
SINT_TO_STRING
USINT_TO_BOOL
USINT_TO_BYTE
USINT_TO_WORD, USINT_TO_DWORD,
USINT_TO_INT, USINT_TO_UINT,
USINT_TO_DINT, USINT_TO_UDINT
USINT_TO_SINT, USINT_TO_REAL,
USINT_TO_LREAL, USINT_TO_CHAR,
USINT_TO_STRING
UInt
Result
The lowest bit is transferred into the destination data
type.
INT_TO_DWORD,
INT_TO_USINT,
INT_TO_UDINT,
INT_TO_LREAL,
INT_TO_STRING
INT_TO_DINT
UINT_TO_BOOL
UINT_TO_BYTE, UINT_TO_SINT,
UINT_TO_USINT, UINT_TO_INT,
UINT_TO_REAL, UINT_TO_LREAL,
UINT_TO_CHAR, UINT_TO_STRING
UINT_TO_WORD, UINT_TO_DATE
UINT_TO_DWORD, UINT_TO_DINT,
UINT_TO_UDINT
215
Basic instructions
7.7 Convert
Table 7- 78
Data type
DInt
UDInt
Table 7- 79
Result
UDINT_TO_BOOL
Data type
Instruction
Result
Real
REAL_TO_DWORD, REAL_TO_LREAL
LReal
Table 7- 80
Data type
Time
Instruction
TIME_TO_DINT
DTL
DTL_TO_DATE, DTL_TO_TOD
TOD
TOD_TO_UDINT
Date
DATE_TO_UINT
216
Basic instructions
7.7 Convert
Table 7- 81
Data type
Char
String
7.7.3
Table 7- 82
LAD / FBD
Result
STRING_TO_SINT, STRING_TO_USINT,
STRING_TO_INT, STRING_TO_UINT,
STRING_TO_DINT, STRING_TO_UDINT,
STRING_TO_REAL, STRING_TO_LREAL
STRING_TO_CHAR
Description
Converts a real number to an integer. The default data type is DINT. When
the output is a valid data type other than DINT, it must be declared
explicitly; for example, ROUND_REAL or ROUND_LREAL.
The real number fraction is rounded to the nearest integer value (IEEE round to nearest). If the number is exactly one-half the span between two
integers (for example, 10.5), then the number is rounded to the even
integer. For example:
out := TRUNC(in);
ROUND (10.5) = 10
ROUND (11.5) = 12
TRUNC converts a real number to an integer. The fractional part of the real
number is truncated to zero (IEEE - round to zero).
For LAD and FBD: Click the "???" (by the instruction name) and select a data type from the drop-down menu.
Table 7- 83
Parameter
Data type
Description
IN
Real, LReal
OUT
217
Basic instructions
7.7 Convert
Table 7- 84
ENO status
ENO
Description
Result OUT
No error
Valid result
7.7.4
Table 7- 85
LAD / FBD
Description
out := FLOOR(in);
For LAD and FBD: Click the "???" (by the instruction name) and select a data type from the drop-down menu.
Table 7- 86
Parameter
Data type
IN
Real, LReal
OUT
Converted output
Table 7- 87
Description
ENO status
ENO
Description
Result OUT
No error
Valid result
218
Basic instructions
7.7 Convert
7.7.5
Table 7- 88
LAD / FBD
Description
Scales the normalized real parameter VALUE
where ( 0.0 <= VALUE <= 1.0 ) in the data type
and value range specified by the MIN and MAX
parameters:
OUT = VALUE (MAX - MIN) + MIN
out :=NORM_X(min:=_in_,
value:=_in_,
max:=_in_);
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
Table 7- 89
Parameter
Data type1
Description
MIN
VALUE
OUT
For SCALE_X: Parameters MIN, MAX, and OUTmust be the same data type.
For NORM_X: Parameters MIN, VALUE, and MAXmust be the same data type.
219
Basic instructions
7.7 Convert
Note
SCALE_X parameter VALUE should be restricted to ( 0.0 <= VALUE <= 1.0 )
If parameter VALUE is less than 0.0 or greater than 1.0:
The linear scaling operation can produce OUT values that are less than the parameter
MIN value or above the parameter MAX value for OUT values that fit within the value
range of the OUT data type. SCALE_X execution sets ENO = TRUE for these cases.
It is possible to generate scaled numbers that are not within the range of the OUT data
type. For these cases, the parameter OUT value is set to an intermediate value equal to
the least-significant portion of the scaled real number prior to final conversion to the OUT
data type. SCALE_X execution sets ENO = FALSE in this case.
NORM_X parameter VALUE should be restricted to ( MIN <= VALUE <= MAX )
If parameter VALUE is less than MIN or greater than MAX, the linear scaling operation can
produce normalized OUT values that are less than 0.0 or greater than 1.0. NORM_X
execution sets ENO = TRUE in this case.
Table 7- 90
ENO status
ENO
Condition
Result OUT
No error
Valid result
220
Basic instructions
7.7 Convert
To transform the analog value to the corresponding engineering units, normalize the input to
a value between 0.0 and 1.0, and then scale it between -30.0 and 70.0. The resulting value
is the temperature represented by the analog input in degrees C:
Note that if the analog input was from an analog signal module or signal board using voltage,
the MIN value for the NORM_X instruction would be -27648 instead of 0.
Note that if the analog output was for an analog signal module or signal board using voltage,
the MIN value for the SCALE_X instruction would be -27648 instead of 0.
Additional information on analog input representations (Page 770) and analog output
representations (Page 771) in both voltage and current can be found in the Technical
Specifications.
221
Basic instructions
7.8 Program control
7.8
Program control
7.8.1
Table 7- 91
Description
Selective
IF-THEN statement
(Page 223)
CASE statement
(Page 224)
FOR statement
(Page 225)
WHILE-DO statement
(Page 226)
REPEAT-UNTIL
statement (Page 227)
CONTINUE statement
(Page 227)
EXIT statement
(Page 228)
GOTO statement
(Page 229)
IF-THEN statement
(Page 223)
Causes the program to exit the block currently being executed and to
return to the calling block
Loop
Program jump
See also
RETURN statement (Page 229)
222
Basic instructions
7.8 Program control
7.8.2
IF-THEN statement
The IF-THEN statement is a conditional statement that controls program flow by executing a
group of statements, based on the evaluation of a Bool value of a logical expression. You
can also use brackets to nest or structure the execution of multiple IF-THEN statements.
Table 7- 92
SCL
IF "condition" THEN
statement_A;
statement_B;
statement_C;
;
[ELSIF "condition-n" THEN
statement_N;
;]
Description
[ELSE
statement_X;
;]
END_IF;
You can include multiple ELSIF statements within one IF-THEN statement.
Table 7- 93
Variables
Description
"condition"
"statement_A"
"condition-n"
"statement_N"
Optional. One or more statements to be executed when "condition-n" of the ELSIF statement is
TRUE.
"statement_X"
Optional. One or more statements to be executed when "condition" of the IF-THEN statement
is FALSE.
223
Basic instructions
7.8 Program control
7.8.3
Table 7- 94
CASE statement
Elements of the CASE statement
SCL
CASE "Test_Value" OF
"ValueList": Statement[; Statement, ...]
"ValueList": Statement[; Statement, ...]
[ELSE
Else-statement[; Else-statement, ...]]
END_CASE;
Table 7- 95
Description
The CASE statement executes one of several
groups of statements, depending on the value
of an expression.
Parameters
Parameter
Description
"Test_Value"
"ValueList"
Required. A single value or a comma-separated list of values or ranges of values. (Use two
periods to define a range of values: 2..8) The following example illustrates the different
variants of the value list:
1: Statement_A;
2, 4: Statement _B;
3, 5..7,9: Statement _C;
Statement
Required. One or more statements that are executed when "Test_Value" matches any value
in the value list
Else-statement
Optional. One or more statements that are executed if no match with a value of the
"ValueList" stated matches
224
Basic instructions
7.8 Program control
END_CASE;
END_CASE;
7.8.4
Table 7- 96
FOR statement
Elements of the FOR statement
SCL
Description
Table 7- 97
Parameters
Parameter
Description
"control_variable"
"begin"
Required. Simple expression that specifies the initial value of the control variables
"end"
Required. Simple expression that determines the final value of the control variables
"increment"
Optional. Amount by which a "control variable" is changed after each loop. The "increment"
has the same data type as "control variable". If the "increment" value is not specified, then
the value of the run tags will be increased by 1 after each loop. You cannot change
"increment" during the execution of the FOR statement.
225
Basic instructions
7.8 Program control
7.8.5
Table 7- 98
WHILE-DO statement
WHILE statement
SCL
WHILE "condition" DO
Statement;
Statement;
...;
END_WHILE;
Table 7- 99
Description
The WHILE statement performs a series of statements until a given condition is
TRUE.
You can nest WHILE loops. The END_WHILE statement refers to the last executed
WHILE instruction.
Parameters
Parameter
Description
"condition"
Statement
Optional. One or more statements that are executed until the condition evaluates to TRUE.
Note
The WHILE statement evaluates the state of "condition" before executing any of the
statements. To execute the statements at least one time regardless of the state of
"condition", use the REPEAT statement.
The WHILE statement executes according to the following rules:
Prior to each iteration of the loop body, the execution condition is evaluated.
The loop body following DO iterates as long as the execution condition has the value
TRUE.
Once the value FALSE occurs, the loop is skipped and the statement following the loop is
executed.
To end the loop regardless of the state of the "condition" expression, use the EXIT statement
(Page 228). The EXIT statement executes the statement immediately following the
END_WHILE statement
Use the CONTINUE statement to skip the subsequent statements of a WHILE loop and to
continue the loop with the examination of whether the condition is met for termination.
226
Basic instructions
7.8 Program control
7.8.6
REPEAT-UNTIL statement
Description
The REPEAT statement executes a group of statements until a given condition is
TRUE.
You can nest REPEAT loops. The END_REPEAT statement always refers to the last
executed Repeat instruction.
Description
Statement
Optional. One or more statements that are executed until the condition is TRUE.
"condition"
Required. One or more expressions of the two following ways: A numeric expression or string
expression that evaluates to TRUE or FALSE. A "null" condition is interpreted as FALSE.
Note
Before evaluating the state of "condition", the REPEAT statement executes the statements
during the first iteration of the loop (even if "condition" is FALSE). To review the state of
"condition" before executing the statements, use the WHILE statement.
To end the loop regardless of the state of the "condition" expression, use the EXIT statement
(Page 228). The EXIT statement executes the statement immediately following the
END_REPEAT statement
Use the CONTINUE statement (Page 227) to skip the subsequent statements of a REPEAT
loop and to continue the loop with the examination of whether the condition is met for
termination.
7.8.7
CONTINUE statement
Description
CONTINUE
Statement;
;
The CONTINUE statement skips the subsequent statements of a program loop (FOR,
WHILE, REPEAT) and continues the loop with the examination of whether the condition is
met for termination. If this is not the case, the loop continues.
227
Basic instructions
7.8 Program control
The CONTINUE statement executes according to the following rules:
This statement immediately terminates execution of a loop body.
Depending on whether the condition for repeating the loop is satisfied or not the body is
executed again or the iteration statement is exited and the statement immediately
following is executed.
In a FOR statement, the control variable is incremented by the specified increment
immediately after a CONTINUE statement.
Use the CONTINUE statement only within a loop. In nested loops CONTINUE always refers
to the loop that includes it immediately. CONTINUE is typically used in conjunction with an IF
statement.
If the loop is to exit regardless of the termination test, use the EXIT statement.
The following example shows the use of the CONTINUE statement to avoid a division-by-0
error when calculating the percentage of a value:
FOR x = 0 TO 10 DO
IF value[i] = 0 THEN CONTINUE; END_IF;
p := part / value[i] * 100;
s := INT_TO_STRING(p);
percent=CONCAT(IN1:=s, IN2:="%");
END_FOR;
7.8.8
EXIT statement
Description
EXIT;
An EXIT statement is used to exit a loop (FOR, WHILE or REPEAT) at any point, regardless of whether
the terminate condition is satisfied.
228
Basic instructions
7.8 Program control
7.8.9
GOTO statement
Description
The GOTO statement skips over statements by jumping to a label in the same
block.
The jump label ("JumpLabel") and the GOTO statement must be in the same block.
The name of a jump label can only be assigned once within a block. Each jump
label can be the target of several GOTO statements.
It is not possible to jump to a loop section (FOR, WHILE or REPEAT). It is possible to jump
from within a loop.
In the following example: Depending on the value of the "Tag_value" operand, the execution
of the program resumes at the point defined by the corresponding jump label. If "Tag_value"
equals 2, the program execution resumes at the jump label "MyLabel2" and skips
"MyLabel1".
CASE "Tag_value" OF
1 : GOTO MyLabel1;
2 : GOTO MyLabel2;
ELSE GOTO MyLabel3;
END_CASE;
MyLabel1: "Tag_1" := 1;
MyLabel2: "Tag_2" := 1;
MyLabel3: "Tag_4" := 1;
7.8.10
RETURN statement
Description
RETURN;
The Return instruction exits the code block being executed without conditions. Program
execution returns to the calling block or to the operating system (when exiting an OB).
229
Basic instructions
7.8 Program control
7.8.11
FBD
SCL
Description
You create your label names by typing in the LABEL instruction directly. Use the parameter helper icon to select the
available label names for the JMP and JMPN label name field. You can also type a label name directly into the JMP or
JMPN instruction.
Data type
Description
Label_name
Label identifier
7.8.12
JMP_LIST instruction
SCL
CASE k OF
0: GOTO
1: GOTO
2: GOTO
[n: GOTO
END_CASE;
Description
dest0;
dest1;
dest2;
destn;]
230
Basic instructions
7.8 Program control
Table 7- 109 Data types for parameters
Parameter
Data type
Description
UInt
Program Labels
For LAD and FBD: The JMP_LIST box is first placed in your program, there are two jump
label outputs. You can add or delete jump destinations.
Click the create icon inside the box (on the left of the last DEST parameter)
to add new outputs for jump labels.
7.8.13
SWITCH instruction
SCL
Not available
Description
The SWITCH instruction acts as a program jump distributor to
control the execution of program sections. Depending on the
result of comparisons between the value of the K input and the
values assigned to the specified comparison inputs, a jump occurs
to the program label that corresponds to the first comparison test
that is true. If none of the comparisons is true, then a jump to the
label assigned to ELSE occurs. Program execution continues with
the program instructions that follow the destination jump label.
For LAD and FBD: Click below the box name and select a data type from the drop-down menu.
231
Basic instructions
7.8 Program control
Table 7- 111 Data types for parameters
Description
Parameter
Data type1
SInt, Int, DInt, USInt, UInt, UDInt, Real, Common comparison value input
LReal, Byte, Word, DWord, Time,
TOD, Date
==, <>, <, <=, >. >= SInt, Int, DInt, USInt, UInt, UDInt, Real, Separate comparison value inputs for specific comparison
LReal, Byte, Word, DWord, Time,
types
TOD, Date
DEST0, DEST1, ..,
DESTn. ELSE
Program Labels
The K input and comparison inputs (==, <>, <, <=, >, >=) must be the same data type.
Click the create icon inside the box (to the left of the last DEST
parameter) to add new comparison-destination parameters.
Table 7- 112 SWITCH box data type selection and allowed comparison operations
Data type
Comparison
Operator syntax
Equal
==
Not equal
<>
232
Basic instructions
7.8 Program control
Data type
Comparison
Operator syntax
Equal
==
Not equal
<>
>=
<=
Greater than
>
Less than
<
7.8.14
FBD
SCL
RETURN;
Description
Terminates the execution of the current block
Data type
Description
Return_Value
Bool
The "Return_value" parameter of the RET instruction is assigned to the ENO output
of the block call box in the calling block.
233
Basic instructions
7.8 Program control
Sample steps for using the RET instruction inside an FC code block:
1. Create a new project and add an FC:
2. Edit the FC:
Add instructions from the instruction tree.
Add a RET instruction, including one of the following for the "Return_Value"
parameter:
TRUE, FALSE, or a memory location that specifies the required return value.
Add more instructions.
3. Call the FC from MAIN [OB1].
The EN input on the FC box in the MAIN code block must be true to begin execution of the
FC.
The value specified by the RET instruction in the FC will be present on the ENO output of the
FC box in the MAIN code block following execution of the FC for which power flow to the
RET instruction is true.
7.8.15
SCL
RE_TRIGR();
Description
RE_TRIGR (Re-trigger scan time watchdog) is used to extend the maximum
time allowed before the scan cycle watchdog timer generates an error.
Use the RE_TRIGR instruction to restart the scan cycle monitoring timer during a single scan
cycle. This has the effect of extending the allowed maximum scan cycle time by one
maximum cycle time period, from the last execution of the RE_TRIGR function.
Note
Prior to S7-1200 CPU firmware version 2.2, RE_TRIGR was restricted to execution from a
program cycle OB and could be used to extend the PLC scan time indefinitely. ENO =
FALSE and the watchdog timer is not reset when RE_TRIGR was executed from a start up
OB, an interrupt OB, or an error OB.
For firmware version 2.2 and later, RE_TRIGR can be executed from any OB (including start
up, interrupt, and error OBs). However, the PLC scan can only be extended by a maximum
of 10x the configured maximum cycle time.
234
Basic instructions
7.8 Program control
Minimum value
Maximum value
Default value
1 ms
6000 ms
150 ms
Watchdog timeout
If the maximum scan cycle timer expires before the scan cycle has been completed, an error
is generated. If an error handling code block OB 80 is included in the user program, the CPU
executes OB 80 where you may add program logic to create a special reaction. If OB 80 is
not included, the first timeout condition is ignored and the CPU goes to STOP.
If a second maximum scan time timeout occurs in the same program scan (2 times the
maximum cycle time value), an error is triggered that causes the CPU to transition to STOP
mode.
In STOP mode, your program execution stops while CPU system communications and
system diagnostics continue.
7.8.16
SCL
Description
STP();
STP (Stop scan cycle) puts the CPU in STOP mode. When the CPU is in
STOP mode, the execution of your program and physical updates from the
process image are stopped.
For more information see: Configuring the outputs on a RUN-to-STOP transition (Page 87).
If EN = TRUE, then the CPU goes to STOP mode, the program execution stops, and the
ENO state is meaningless. Otherwise, EN = ENO = 0.
7.8.17
235
Basic instructions
7.8 Program control
GetError
Table 7- 118 GetError instruction
LAD / FBD
SCL
GET_ERROR(_o
ut_);
Description
Indicates that a local program block execution error has occurred and fills a
predefined error data structure with detailed error information.
Data type
Description
ERROR
ErrorStruct
Error data structure: You can rename the structure, but not the members within the
structure.
Data type
Description
ERROR_ID
Word
Error ID
FLAGS
Byte
REACTION
CODE_ADDRESS
BLOCK_TYPE
MODE
Byte
Default reaction:
CREF
Byte
1: OB
2: FC
3: FB
CB_NUMBER
UInt
OFFSET
UDInt
Byte
(A)
(B)
(C)
(D)
(E)
0
1
Offset
2
3
Area
Location
Scope
Number
Area
Area
Offset
DB no.
Offset
236
Basic instructions
7.8 Program control
Structure components
Data type
Description
6
PtrNo.
/Acc
PtrNo. /
Acc
Slot No. /
Scope
Area
DB no.
Offset
Area
DB no.
Offset
OPERAND_NUMBER
UInt
POINTER_NUMBER_
LOCATION
UInt
SLOT_NUMBER_SCOPE
UInt
DATA_ADDRESS
AREA
NREF
Byte
I: 16#81
Q: 16#82
M: 16#83
DB_NUMBER
UInt
OFFSET
UDInt
GetErrorID
Table 7- 121 GetErrorID instruction
LAD / FBD
SCL
GET_ERR_ID()
;
Description
Indicates that a program block execution error has occurred and reports the ID
(identifier code) of the error.
Data type
Description
ID
Word
ERROR_ID
Decimal
No error
2503
9475
2522
9506
2523
9507
2524
9508
237
Basic instructions
7.8 Program control
ERROR_ID
Hexadecimal
ERROR_ID
Decimal
2525
9509
2528
9512
2529
9513
2530
9520
DB write protected
253A
9530
253C
9532
253D
9533
253E
9534
253F
9535
2575
9589
2576
9590
2942
10562
2943
10563
Operation
By default, the CPU responds to a block execution error by logging an error in the
diagnostics buffer. However, if you place one or more GetError or GetErrorID instructions
within a code block, this block is now set to handle errors within the block. In this case, the
CPU does not log an error in the diagnostics buffer. Instead, the error information is reported
in the output of the GetError or GetErrorID instruction. You can read the detailed error
information with the GetError instruction, or read just the error identifier with GetErrorID
instruction. Normally the first error is the most important, with the following errors only
consequences of the first error.
The first execution of a GetError or GetErrorID instruction within a block returns the first error
detected during block execution. This error could have occurred anywhere between the start
of the block and the execution of either GetError or GetErrorID. Subsequent executions of
either GetError or GetErrorID return the first error since the previous execution of GetError or
GetErrorID. The history of errors is not saved, and execution of either instruction will re-arm
the PLC system to catch the next error.
The ErrorStruct data type used by the GetError instruction can be added in the data block
editor and block interface editors, so your program logic can access these values. Select
ErrorStruct from the data type drop-down list to add this structure. You can create multiple
ErrorStruct elements by using unique names. The members of an ErrorStruct cannot be
renamed.
238
Basic instructions
7.9 Word logic operations
GetError and GetErrorID can be used to send error information from the currently executing
block (called block) to a calling block. Place the instruction in the last network of the called
block program to report the final execution status of the called block.
7.9
7.9.1
SCL
out := in1 AND in2;
Description
OR: Logical OR
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
To add an input, click the "Create" icon or right-click on an input stub for one of the
existing IN parameters and select the "Insert input" command.
To remove an input, right-click on an input stub for one of the existing IN parameters (when
there are more than the original two inputs) and select the "Delete" command.
Table 7- 125 Data types for the parameters
Parameter
Data type
Description
IN1, IN2
Logical inputs
OUT
Logical output
The data type selection sets parameters IN1, IN2, and OUT to the same data type.
The corresponding bit values of IN1 and IN2 are combined to produce a binary logic result at
parameter OUT. ENO is always TRUE following the execution of these instructions.
239
Basic instructions
7.9 Word logic operations
7.9.2
Invert instruction
SCL
Not available
Description
Calculates the binary one's complement of the parameter IN. The one's
complement is formed by inverting each bit value of the IN parameter
(changing each 0 to 1 and each 1 to 0). ENO is always TRUE following
the execution of this instruction.
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
Data type
Description
IN
OUT
Inverted output
7.9.3
SCL
out := ENCO(_in_);
Description
Encodes a bit pattern to a binary number
The ENCO instruction converts parameter IN to the binary number
corresponding to the bit position of the least-significant set bit of
parameter IN and returns the result to parameter OUT. If
parameter IN is either 0000 0001 or 0000 0000, then a value of 0
is returned to parameter OUT. If the parameter IN value is 0000
0000, then ENO is set to FALSE.
out := DECO(_in_);
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
240
Basic instructions
7.9 Word logic operations
Table 7- 129 Data types for the parameters
Parameter
Data type
Description
IN
DECO: UInt
ENCO: Int
OUT
Condition
Result (OUT)
No error
IN is zero
The DECO parameter OUT data type selection of a Byte, Word, or DWord restricts the
useful range of parameter IN. If the value of parameter IN exceeds the useful range, then a
modulo operation is performed to extract the least significant bits shown below.
DECO parameter IN range:
3 bits (values 0-7) IN are used to set 1 bit position in a Byte OUT
4-bits (values 0-15) IN are used to set 1 bit position in a Word OUT
5 bits (values 0-31) IN are used to set 1 bit position in a DWord OUT
Table 7- 131 Examples
DECO IN value
Byte OUT
Min. IN
00000001
8 bits
Max. IN
10000000
Word OUT
Min. IN
0000000000000001
16 bits
Max. IN
15
1000000000000000
DWord OUT
Min. IN
00000000000000000000000000000001
32 bits
Max. IN
31
10000000000000000000000000000000
241
Basic instructions
7.9 Word logic operations
7.9.4
SCL
out := SEL(
g:=_bool_in,
in0:-_variant_in,
in1:=_variant_in);
Description
SEL assigns one of two input values to parameter OUT, depending
on the parameter G value.
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
Parameter
Data type 1
Description
Bool
0 selects IN0
1 selects IN1
IN0, IN1
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord,
Time, Char
Inputs
OUT
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord,
Time, Char
Output
Input variables and the output variable must be of the same data type.
Condition codes: ENO is always TRUE following execution of the SEL instruction.
Table 7- 134 MUX (multiplex) instruction
LAD / FBD
SCL
Description
out := MUX(
k:=_unit_in,
in1:=variant_in,
in2:=variant_in,
[...in32:=variant_in,]
inelse:=variant_in);
1
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
To add an input, click the "Create" icon or right-click on an input stub for one of
the existing IN parameters and select the "Insert input" command.
To remove an input, right-click on an input stub for one of the existing IN parameters (when
there are more than the original two inputs) and select the "Delete" command.
242
Basic instructions
7.9 Word logic operations
Table 7- 135 Data types for the MUX instruction
Parameter
Data type
Description
UInt
0 selects IN1
1 selects IN2
n selects INn
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord,
Time, Char
Inputs
ELSE
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord,
Time, Char
OUT
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord,
Time, Char
Output
Input variables and the output variable must be of the same data type.
SCL
DEMUX(
k:=_unit_in,
in:=variant_in,
out1:=variant_in,
out2:=variant_in,
Description
DEMUX copies the value of the location assigned to parameter IN to
one of many outputs. The value of the K parameter selects which
output selected as the destination of the IN value. If the value of K is
greater than the number (OUTn - 1) then the IN value is copied to
location assigned to the ELSE parameter.
[...out32:=variant_in,]
outelse:=variant_in);
1
For LAD and FBD: Click the "???" and select a data type from the drop-down menu.
To add an output, click the create icon or right-click on an output stub for one of the existing
OUT parameters and select the "Insert output" command. To remove an output, right-click
on an output stub for one of the existing OUT parameters (when there are more than the
original two outputs) and select the "Delete" command.
To add an output, click the "Create" icon or right-click on an output stub for one
of the existing OUT parameters and select the "Insert output" command.
To remove an output, right-click on an output stub for one of the existing OUT parameters
(when there are more than the original two outputs) and select the "Delete" command.
243
Basic instructions
7.10 Shift and Rotate
Table 7- 137 Data types for the DEMUX instruction
Parameter
Data type 1
Description
UInt
Selector value:
0 selects OUT1
1 selects OUT2
n selects OUTn
IN
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord,
Time, Char
Input
OUT0, OUT1, ..
OUTn
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord,
Time, Char
Outputs
ELSE
SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord,
Time, Char
The input variable and the output variables must be of the same data type.
Table 7- 138 ENO status for the MUX and DEMUX instructions
ENO
Condition
Result OUT
No error
7.10
7.10.1
Shift instructions
SCL
out := SHR(
in:=_variant_in_,
n:=_uint_in);
out := SHL(
in:=_variant_in_,
n:=_uint_in);
Description
Use the shift instructions (SHL and SHR) to shift the bit pattern of
parameter IN. The result is assigned to parameter OUT.
Parameter N specifies the number of bit positions shifted:
For LAD and FBD: Click the "???" and select the data types from the drop-down menu.
244
Basic instructions
7.10 Shift and Rotate
Table 7- 140 Data types for the parameters
Parameter
Data type
Description
IN
UInt
OUT
7.10.2
Rotate instructions
SCL
Description
out := ROL(
in:=_variant_in_,
n:=_uint_in);
out := ROR(
in:=_variant_in_,
n:=_uint_in);
Use the rotate instructions (ROR and ROL) to rotate the bit pattern of
parameter IN. The result is assigned to parameter OUT. Parameter N
defines the number of bit positions rotated.
For LAD and FBD: Click the "???" and select the data types from the drop-down menu.
245
Basic instructions
7.10 Shift and Rotate
Table 7- 143 Data types for the parameters
Parameter
Data type
Description
IN
UInt
OUT
246
Extended instructions
8.1
8.1.1
Table 8- 1
LAD / FBD
Description
T_CONV converts a Time data type to a DInt data type, or the reverse
conversion from DInt data type to Time data type.
For LAD and FBD: Click the "???" and select the data types from the drop-down menu.
Table 8- 2
Data type
Description
IN
IN
DInt, Time
OUT
OUT
DInt, Time
247
Extended instructions
8.1 Date and time-of-day
Table 8- 3
LAD / FBD
Description
T_ADD adds the input IN1 value (DTL or Time data types) with the input
IN2 Time value. Parameter OUT provides the DTL or Time value result.
Two data type operations are possible:
For LAD and FBD: Click the "???" and select the data types from the drop-down menu.
Table 8- 4
T_SUB subtracts the IN2 Time value from IN1 (DTL or Time value).
Parameter OUT provides the difference value as a DTL or Time data
type. Two data type operations are possible:
out := T_SUB(
in1:=_variant_in,
in2:=_time_in);
Data type
Description
IN11
DTL, Time
IN
IN2
IN
Time
OUT
OUT
DTL, Time
Select the IN1 data type from the drop-down list available below the instruction name. The IN1 data type selection also
sets the data type of parameter OUT.
Table 8- 5
LAD / FBD
Table 8- 6
SCL
out := T_DIFF(
in1:=_DTL_in,
in2:=_DTL_in);
Description
T_DIFF subtracts the DTL value (IN2) from the DTL value (IN1).
Parameter OUT provides the difference value as a Time data type.
Data type
Description
IN1
DTL
DTL value
IN
IN2
IN
DTL
OUT
OUT
Time
Time difference
248
Extended instructions
8.1 Date and time-of-day
Condition codes: ENO = 1 means no error occurred. ENO = 0 and parameter OUT = 0
errors:
Invalid DTL value
Invalid Time value
Table 8- 7
LAD / FBD
SCL
out := CONCAT_DATE_TOD(
In1 := _date_in,
In2 := _tod_in);
Description
T_COMBINE combines a Date value and a
Time_of_Day value to create a DTL value.
Note that the T_COMBINEinstruction in the Extended Instructions equates to the CONCAT_DATE_TODfunction in SCL.
Table 8- 8
Data type
Description
IN1
IN
Date
IN2
IN
Time_of_Day
OUT
OUT
DTL
DTL value
8.1.2
Table 8- 9
LAD / FBD
Description
ret_val := WR_SYS_T(
in:=_DTL_in_);
WR_SYS_T (Write System Time) sets the CPU time of day clock with a
DTL value at parameter IN. This time value does not include local time
zone or daylight saving time offsets.
ret_val := RD_SYS_T(
out=>_DTL_out);
RD_SYS_T (Read System Time) reads the current system time from
the CPU. This time value does not include local time zone or daylight
saving time offsets.
ret_val := RD_LOC_T(
out=>_DTL_out);
RD_LOC_T (Read Local Time) provides the current local time of the
CPU as a DTL data type. This time value reflects the local time zone
adjusted appropriately for daylight saving time (if configured).
249
Extended instructions
8.1 Date and time-of-day
Table 8- 10
Data type
Description
IN
IN
DTL
RET_VAL
OUT
Int
OUT
OUT
DTL
The local time is calculated by using the time zone and daylight saving time offsets that
you set in the device configuration general tab "Time of day" parameters.
Time zone configuration is an offset to UTC or GMT time.
Daylight saving time configuration specifies the month, week, day, and hour when
daylight saving time begins.
Standard time configuration also specifies the month, week, day, and hour when standard
time begins.
The time zone offset is always applied to the system time value. The daylight saving time
offset is only applied when daylight saving time is in effect.
Note
Daylight saving and standard start time configuration
The "Time of day" properties for "Start for daylight saving time" of the CPU device
configuration must be your local time.
Condition codes: ENO = 1 means no error occurred. ENO = 0 means an execution error
occurred, and a condition code is provided at the RET_VAL output.
Table 8- 11
Condition codes
RET_VAL (W#16#....)
Description
0000
0001
Daylight saving time has been configured, and the current local time is in daylight saving
time.
8080
8081
8082
8083
8084
8085
8086
8087
80B0
250
Extended instructions
8.1 Date and time-of-day
8.1.3
Table 8- 12
LAD / FBD
Table 8- 13
SCL
RTM(NR:=_uint_in_,
MODE:=_byte_in_,
PV:=_dint_in_,
CQ=>_bool_out_,
CV=>_dint_out_);
Description
The RTM (Run Time Meter) instruction can set, start, stop, and
read the run-time hour meters in the CPU.
Data type
Description
NR
IN
UInt
MODE
IN
Byte
2 = Stop
PV
IN
DInt
RET_VAL
OUT
Int
CQ
OUT
Bool
CV
OUT
DInt
The CPU operates up to 10 run-time hour meters to track the run-time hours of critical
control subsystems. You must start the individual hour meters with one RTM execution for
each timer. All run-time hour meters are stopped when the CPU makes a run-to-stop
transition. You can also stop individual timers with RTM execution mode 2.
When a CPU makes a stop-to-run transition, you must restart the hour timers with one RTM
execution for each timer that is started. After a run-time meter value is greater than
2147483647 hours, counting stops and the "Overflow" error is sent. You must execute the
RTM instruction once for each timer to reset or modify the timer.
A CPU power failure or power cycle causes a power-down process that saves the current
run-time meter values in retentive memory. Upon CPU power-up, the stored run-time meter
values are reloaded to the timers and the previous run-time hour totals are not lost. The runtime meters must be restarted to accumulate additional run-time.
251
Extended instructions
8.1 Date and time-of-day
Your program can also use RTM execution mode 7 to save the run-time meter values in a
memory card. The states of all timers at the instant RTM mode 7 is executed are stored in
the memory card. These stored values can become incorrect over time as the hour timers
are started and stopped during a program run session. You must periodically update the
memory card values to capture important run-time events. The advantage that you get from
storing the RTM values in the memory card is that you can insert the memory card in a
substitute CPU where your program and saved RTM values will be available. If you did not
save the RTM values in the memory card, then the timer values would be lost (in a substitute
CPU).
Note
Avoid excessive program calls for memory card write operations
Minimize flash memory card write operations to extend the life of the memory card.
Table 8- 14
RET_VAL (W#16#....)
Description
No error
8080
8081
8082
8091
80B1
8.1.4
Table 8- 15
LAD / FBD
Condition codes
SET_TIMEZONE instruction
SET_TIMEZONE instruction
SCL
"SET_TIMEZONE_DB"(
REQ:=_bool_in,
Timezone:=_struct_in,
DONE=>_bool_out_,
BUSY=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_);
Description
Sets the local time zone and daylight
saving parameters that are used to
transform the CPU system time to local
time.
252
Extended instructions
8.1 Date and time-of-day
Table 8- 16
Data type
Description
REQ
IN
Bool
Timezone
IN
TimeTransformationRule
DONE
OUT
Bool
Function complete
BUSY
OUT
Bool
Function busy
ERROR
OUT
Bool
Error detected
STATUS
OUT
Word
To manually configure the time zone parameters for the CPU, use the "Time of day"
properties of the "General" tab of the device configuration.
Use the SET_TIMEZONE instruction to set the local time configuration programmatically.
The parameters of the "TimeTransformationRule" structure specify the local time zone and
timing for automatic switching between standard time and daylight saving time.
Table 8- 17
"TimeTransformationRule" structure
Parameter
Data type
Description
Bias
Int
DaylightBias
Int
DaylightStartMonth
USInt
DaylightStartWeek
USInt
DaylightStartWeekday
USInt
...
1 = Sunday
...
7 = Saturday
DaylightStartHour
USInt
StandardStartMonth
USInt
StandardStartWeek
USInt
StandardStartWeekday
USInt
StandardStartHour
USInt
STRING [80]
...
1 = Sunday
...
7 = Saturday
253
Extended instructions
8.2 String and character
8.2
8.2.1
8.2.2
S_MOVE instruction
Table 8- 18
LAD / FBD
SCL
out := in;
Description
Copy the source IN string to the OUT location. S_MOVE execution does not affect
the contents of the source string.
Table 8- 19
Parameter
Data type
Description
IN
String
Source string
OUT
String
Target address
If the actual length of the string at the input IN exceeds the maximum length of a string
stored at output OUT, then the part of the IN string which can fit in the OUT string is copied.
S7-1200 Programmable controller
254
Extended instructions
8.2 String and character
8.2.3
8.2.3.1
LAD / FBD
SCL
Description
out :=
<Type>_TO_<Type>(in);
For LAD / FBD: Click the "???" and select the data type from the drop-down list.
For SCL: Select S_CONV from the Extended Instructions, and answer the prompts for the data types for the conversion.
STEP 7 then provides the appropriate conversion instruction.
Table 8- 21
Data type
Description
IN
IN
String
OUT
OUT
String, Char, SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal
Conversion of the string parameter IN starts at the first character and continues until the end
of the string, or until the first character is encountered that is not "0" through "9", "+", "-", or
".". The result value is provided at the location specified in parameter OUT. If the output
number value does not fit in the range of the OUT data type, then parameter OUT is set to 0
and ENO is set to FALSE. Otherwise, parameter OUT contains a valid result and ENO is set
to TRUE.
Input String format rules:
If a decimal point is used in the IN string, you must use the "." character.
Comma characters "," used as a thousands separator to the left of the decimal point are
allowed and ignored.
Leading spaces are ignored.
255
Extended instructions
8.2 String and character
Data type
Description
IN
IN
String, Char, SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal
OUT
OUT
String
Example
USInt
255
SInt
-128
UInt
65535
Int
-32768
UDInt
10
4294967295
12
DInt
11
-2147483648
13
256
Extended instructions
8.2 String and character
STRG_VAL instruction
Table 8- 24
String-to-value instruction
LAD / FBD
SCL
"STRG_VAL"(
in:=_string_in,
format:=_word_in,
p:=uint_in,
out=>_variant_out);
Description
Converts a number character string to the corresponding
integer or floating point representation.
For LAD / FBD: Click the "???" and select the data type from the drop-down list.
Table 8- 25
Description
IN
String
FORMAT
IN
Word
IN
OUT
OUT
Conversion begins in the string IN at character offset P and continues until the end of the
string, or until the first character is encountered that is not "+", "-", ".", ",", "e", "E", or "0" to
"9". The result is placed at the location specified in parameter OUT.
String data must be initialized before execution as a valid string in memory.
The FORMAT parameter for the STRG_VAL instruction is defined below. The unused bit
positions must be set to zero.
Table 8- 26
Bit
16
0
Bit 8 Bit 7
0
Bit 0
0
f = Notation format
1= Exponential notation
0 = Fixed point notation
257
Extended instructions
8.2 String and character
Table 8- 27
FORMAT (W#16#)
Notation format
0000 (default)
Fixed point
"."
0001
","
Exponential
0002
"."
0003
","
0004 to FFFF
Illegal values
VAL_STRG instruction
Table 8- 28
Value-to-string operation
LAD / FBD
SCL
Description
"VAL_STRG"(
in:=_variant_in,
size:=_usint_in,
prec:=_usint_in,
format:=_word_in,
p:=uint_in,
out=>_string_out);
For LAD / FBD: Click the "???" and select the data type from the drop-down list.
Table 8- 29
Data type
Description
IN
IN
SIZE
IN
USInt
PREC
IN
USInt
FORMAT
IN
Word
IN
OUT
OUT
String
258
Extended instructions
8.2 String and character
The value represented by parameter IN is converted to a string referenced by parameter
OUT. The parameter OUT must be a valid string before the conversion is executed.
The converted string will replace characters in the OUT string starting at character offset
count P to the number of characters specified by parameter SIZE. The number of characters
in SIZE must fit within the OUT string length, counting from character position P. This
instruction is useful for embedding number characters into a text string. For example, you
can put the numbers "120" into the string "Pump pressure = 120 psi".
Parameter PREC specifies the precision or number of digits for the fractional part of the
string. If the parameter IN value is an integer, then PREC specifies the location of the
decimal point. For example, if the data value is 123 and PREC = 1, then the result is "12.3".
The maximum supported precision for the Real data type is 7 digits.
If parameter P is greater than the current size of the OUT string, then spaces are added, up
to position P, and the result is appended to the end of the string. The conversion ends if the
maximum OUT string length is reached.
The FORMAT parameter for the VAL_STRG instruction is defined below. The unused bit
positions must be set to zero.
Table 8- 30
Bit
16
0
Table 8- 31
Bit 8 Bit 7
0
Bit 0
0
f = Notation format
1= Exponential notation
0 = Fixed point notation
FORMAT (WORD)
Notation format
W#16#0000
"-" only
Fixed point
"."
W#16#0001
","
Exponential
W#16#0002
","
W#16#0003
W#16#0004
Fixed Point
W#16#0005
"."
","
Exponential
W#16#0006
"."
","
W#16#0007
W#16#0008 to W#16#FFFF
"."
Illegal values
259
Extended instructions
8.2 String and character
Parameter OUT string format rules:
Leading space characters are added to the leftmost part of the string when the converted
string is smaller than the specified size.
When the FORMAT parameter sign bit is FALSE, unsigned and signed integer data type
values are written to the output buffer without the leading "+" sign. The "-" sign is used if
required.
<leading spaces><digits without leading zeroes>'.'<PREC digits>
When the sign bit is TRUE, unsigned and signed integer data type values are written to
the output buffer always with a leading sign character.
<leading spaces><sign><digits without leading zeroes>'.'<PREC digits>
When the FORMAT is set to exponential notation, Real data type values are written to the
output buffer as:
<leading spaces><sign><digit> '.' <PREC digits>'E' <sign><digits without leading zero>
When the FORMAT is set to fixed point notation, integer, unsigned integer, and real data
type values are written to the output buffer as:
<leading spaces><sign><digits without leading zeroes>'.'<PREC digits>
Leading zeros to the left of the decimal point (except the digit adjacent to the decimal
point) are suppressed.
Values to the right of the decimal point are rounded to fit in the number of digits to the
right of the decimal point specified by the PREC parameter.
The size of the output string must be a minimum of three bytes more than the number of
digits to the right of the decimal point.
Values are right-justified in the output string.
ENO status
ENO
Description
No error
Illegal or invalid parameter; for example, an access to a DB that does not exist
Illegal string where the current length is greater than the maximum length
The converted number value is too large for the specified OUT data type.
The OUT parameter maximum string size must be large enough to accept the number of characters
specified by parameter SIZE, starting at the character position parameter P.
260
Extended instructions
8.2 String and character
ENO
Description
Illegal P value where P=0 or P is greater than the current string length
Table 8- 33
IN string
OUT value
ENO
"123"
Int or DInt
123
TRUE
"-00456"
Int or DInt
-456
TRUE
"123.45"
Int or DInt
123
TRUE
"+2345"
Int or DInt
2345
TRUE
"00123AB"
Int or DInt
123
TRUE
"123"
Real
123.0
TRUE
"123.45"
Real
123.45
TRUE
"1.23e-4"
Real
1.23
TRUE
"1.23E-4"
Real
1.23
TRUE
"12,345.67"
Real
12345.67
TRUE
"3.4e39"
Real
3.4
TRUE
"-3.4e39"
Real
-3.4
TRUE
"1.17549e-38"
Real
1.17549
TRUE
"12345"
SInt
FALSE
"A123"
N/A
FALSE
""
N/A
FALSE
"++123"
N/A
FALSE
"+-123"
N/A
FALSE
Table 8- 34
Data type
IN value
OUT string
ENO
UInt
123
"123"
TRUE
UInt
"0"
TRUE
UDInt
12345678
"12345678"
TRUE
Real
-INF
"INF"
FALSE
Real
+INF
"INF"
FALSE
Real
NaN
"NaN"
FALSE
Table 8- 35
IN string
FORMAT
(W#16#....)
OUT value
ENO
"123"
0000
Int or DInt
123
TRUE
"-00456"
0000
Int or DInt
-456
TRUE
261
Extended instructions
8.2 String and character
IN string
FORMAT
(W#16#....)
OUT value
ENO
"123.45"
0000
Int or DInt
123
TRUE
"+2345"
0000
Int or DInt
2345
TRUE
"00123AB"
0000
Int or DInt
123
TRUE
"123"
0000
Real
123.0
TRUE
"-00456"
0001
Real
-456.0
TRUE
"+00456"
0001
Real
456.0
TRUE
"123.45"
0000
Real
123.45
TRUE
"123.45"
0001
Real
12345.0
TRUE
"123,45"
0000
Real
12345.0
TRUE
"123,45"
0001
Real
123.45
TRUE
".00123AB"
0001
Real
123.0
TRUE
"1.23e-4"
0000
Real
1.23
TRUE
"1.23E-4"
0000
Real
1.23
TRUE
"1.23E-4"
0002
Real
1.23E-4
TRUE
"12,345.67"
0000
Real
12345.67
TRUE
"12,345.67"
0001
Real
12.345
TRUE
"3.4e39"
0002
Real
+INF
TRUE
"-3.4e39"
0002
Real
-INF
TRUE
"1.1754943e-38"
(and smaller)
0002
Real
0.0
TRUE
"12345"
N/A
SInt
FALSE
"A123"
N/A
N/A
FALSE
""
N/A
N/A
FALSE
"++123"
N/A
N/A
FALSE
"+-123"
N/A
N/A
FALSE
The following examples of VAL_STRG conversions are based on an OUT string initialized as
follows:
"Current Temp = xxxxxxxxxx C"
where the "x" character represents space characters allocated for the converted value.
262
Extended instructions
8.2 String and character
Table 8- 36
Data type
IN value
SIZE
FORMAT
(W#16#....)
PREC
UInt
123
16
10
0000
UInt
UDInt
UDInt
Int
Int
Real
Real
Real
16
12345678
12345678
123
16
16
16
-123
16
-0.00123
-0.00123
-INF
16
16
16
10
10
10
10
10
10
10
10
0000
0000
0001
0004
0004
0004
0006
N/A
2
3
3
0
0
4
4
4
Real
+INF
16
10
N/A
Real
NaN
16
10
N/A
UDInt
12345678
16
N/A
8.2.3.2
OUT string
Current Temp
xxxxxxx123 C
Current Temp
xxxxxx0.00 C
Current Temp
x12345.678 C
Current Temp
x12345,678 C
Current Temp
xxxxxx+123 C
Current Temp
xxxxxx-123 C
Current Temp
0.0012 C
Current Temp
1.2300E-3 C
Current Temp
xxxxxx-INF C
Current Temp
xxxxxx+INF C
Current Temp
xxxxxxxNaN C
Current Temp
xxxxxxxxxx C
ENO
=
TRUE
TRUE
TRUE
TRUE
TRUE
TRUE
= xxx-
TRUE
= -
TRUE
FALSE
FALSE
FALSE
FALSE
Table 8- 37
LAD / FBD
Chars_TO_Strg instruction
SCL
Description
Chars_TO_Strg(
Chars:=_variant_in_,
pChars:=_dint_in_,
Cnt:=_uint_in_,
Strg=>_string_out_);
263
Extended instructions
8.2 String and character
Table 8- 38
Data type
Description
Chars
IN
Variant
pChars
IN
Dint
Cnt
IN
UInt
Strg
OUT
String
Target string
Table 8- 39
Strg_TO_Chars instruction
LAD / FBD
SCL
Strg_TO_Chars(
Strg:=_string_in_,
pChars:=_dint_in_,
Cnt=>_uint_out_,
Chars:=_variant_inout_);
Description
The complete input string Strg is copied to an array of
characters at IN_OUT parameter Chars.
The operation overwrites bytes starting at array element
number specified by the pChars parameter.
Strings of all supported max lengths (1..254) may be used.
An end delimiter is not written; this is your responsibility. To
set an end delimiter just after the last written array
character, use the next array element number [pChars+Cnt].
Table 8- 40
Data type
Strg
IN
String
Source string
pChars
IN
DInt
Chars
IN_OUT
Variant
Cnt
OUT
UInt
Table 8- 41
Description
ENO status
ENO
Description
No error
Chars_TO_Strg: Attempt to copy more character bytes to the output string than allowed by the maximum
length byte in the string declaration
264
Extended instructions
8.2 String and character
ENO
Description
Chars_TO_Strg: The nul character (16#00) value was found in the input character byte array.
Strg_TO_Chars: Attempt to copy more character bytes to the output array than are allowed by the element
number limit
8.2.3.3
Table 8- 42
ATH instruction
LAD / FBD
Table 8- 43
SCL
ret_val := ATH(
in:=_variant_in_,
n:=_int_in_,
out=>_variant_out_);
Description
Converts ASCII characters into packed hexadecimal digits.
Parameter type
IN
IN
Data Type
Description
Variant
IN
UInt
RET_VAL
OUT
Word
OUT
OUT
Variant
Conversion begins at the location specified by parameter IN and continues for N bytes. The
result is placed at the location specified by OUT. Only valid ASCII characters 0 to 9 and
uppercase A to F can be converted. Any other character will be converted to zero.
8-bit ASCII coded characters are converted to 4-bit hexadecimal nibbles. Two ASCII
characters can be stored in a single byte.
The IN and OUT parameters specify byte arrays and not hexadecimal String data. ASCII
characters are converted and placed in the hexadecimal output in the same order as they
are read. If there are an odd number of ASCII characters, then zeros are put in the rightmost nibble of the last converted hexadecimal digit.
Table 8- 44
IN character bytes
OUT value
ENO
'0123'
W#16#0123
TRUE
'123AFx1a23'
10
16#123AF01023
FALSE
'a23'
W#16#A230
TRUE
265
Extended instructions
8.2 String and character
Table 8- 45
LAD / FBD
Table 8- 46
HTA instruction
SCL
ret_val := HTA(
in:=_variant_in_,
n:=_uint_in_,
out=>_variant_out_);
Description
Converts packed hexadecimal digits to their corresponding ASCII
character bytes.
Data Type
Description
IN
IN
Variant
IN
UInt
Number of bytes to convert (each input byte has two 4-bit nibbles and
produces 2N ASCII characters)
RET_VAL
OUT
Word
OUT
OUT
Variant
Conversion begins at the location specified by parameter IN and continues for N bytes. Each
4-bit nibble converts to a single 8-bit ASCII character and produces 2N ASCII character
bytes of output. All 2N bytes of the output are written as ASCII characters 0 to 9 through
uppercase A to F. The parameter OUT specifies a byte array and not a string.
Each nibble of the hexadecimal byte is converted into a character in the same order as they
are read in (left-most nibble of a hexadecimal digit is converted first, followed by the rightmost nibble of that same byte).
Table 8- 47
IN value
W#16#0123
'0123'
TRUE
DW#16#123AF012
'123AF012'
TRUE
Table 8- 48
RET_VAL
(W#16#....)
Description
ENO
0000
No error
TRUE
0007
Invalid ATH input character: A character was found that was not an ASCII character 0- FALSE
9, lowercase a-f, or uppercase A-F
8101
Illegal or invalid input pointer, for example, an access to a DB that does not exist.
8120
Input string is an invalid format, i.e., max= 0, max=255, current>max, or grant length in FALSE
pointer < max
FALSE
8182
FALSE
8151
FALSE
8301
Illegal or invalid output pointer, for example, an access to a DB that does not exist.
FALSE
266
Extended instructions
8.2 String and character
RET_VAL
(W#16#....)
Description
ENO
8320
Output string is an invalid format, i.e., max= 0, max=255, current>max, or grant length
in pointer < max
FALSE
8382
FALSE
8351
FALSE
8.2.4
8.2.4.1
Table 8- 49
LEN
Length instruction
LAD / FBD
Table 8- 50
SCL
Description
out := LEN(in);
LEN (length) provides the current length of the string IN at output OUT. An
empty string has a length of zero.
Data type
Description
IN
IN
String
Input string
OUT
OUT
Table 8- 51
ENO
ENO status
Condition
OUT
267
Extended instructions
8.2 String and character
8.2.4.2
Table 8- 52
CONCAT
Concatenate strings instruction
LAD / FBD
Table 8- 53
SCL
Description
Data type
Description
IN1
String
Input string 1
IN
IN2
IN
String
Input string 2
OUT
OUT
String
Table 8- 54
ENO status
ENO
Condition
OUT
No errors detected
Valid characters
Maximum length of IN1, IN2 or OUT does not fit within allocated memory
range
Maximum length of IN1 or IN2 is 255, or the maximum length of OUT is 0
or 255
268
Extended instructions
8.2 String and character
8.2.4.3
Table 8- 55
LAD / FBD
SCL
Description
If L is greater than the current length of the IN string, then the entire
IN string is returned in OUT.
MID (Middle substring) provides the middle part of a string. The middle
substring is L characters long and starts at character position P
(inclusive).
If the sum of L and P exceeds the current length of the string
parameter IN, then a substring is returned that starts at character
position P and continues to the end of the IN string.
Table 8- 56
If L is greater than the current length of the IN string, then the entire
IN string is returned in parameter OUT.
Data type
Description
IN
IN
String
Input string
IN
Int
IN
Int
OUT
OUT
String
Output string
269
Extended instructions
8.2 String and character
Table 8- 57
ENO status
ENO
Condition
OUT
No errors detected
Valid characters
Maximum length of IN1, IN2 or OUT does not fit within allocated memory
range
Maximum length of IN1, IN2 or OUT is 0 or 255 (illegal length)
8.2.4.4
Table 8- 58
DELETE
Delete substring instruction
LAD / FBD
Table 8- 59
SCL
out := DELETE(in, L, p);
Description
Deletes L characters from string IN. Character deletion starts at
character position P (inclusive), and the remaining substring is
provided at parameter OUT.
Data type
Description
IN
IN
String
Input string
IN
Int
IN
Int
OUT
OUT
String
Output string
270
Extended instructions
8.2 String and character
Table 8- 60
ENO
ENO status
Condition
OUT
No errors detected
Valid characters
Resulting string after characters are deleted is larger than maximum length Resulting string characters are
of OUT string
copied until the maximum length
of OUT is reached
Current length is set to 0
8.2.4.5
Table 8- 61
LAD / FBD
Table 8- 62
INSERT
Insert substring instruction
SCL
Description
Inserts string IN2 into string IN1. Insertion begins after the
character at position P.
Data type
Description
IN1
IN
String
Input string 1
IN2
IN
String
Input string 2
IN
Int
Last character position in string IN1 before the insertion point for
string IN2
OUT
OUT
String
Table 8- 63
Result string
ENO status
ENO
Condition
OUT
No errors detected
Valid characters
P is less than 0
271
Extended instructions
8.2 String and character
ENO
Condition
OUT
Maximum length of IN1, IN2 or OUT does not fit within allocated
memory range
Maximum length of IN1 or IN2 is 255, or maximum length of OUT is
0 or 255
8.2.4.6
Table 8- 64
LAD / FBD
Table 8- 65
REPLACE
Replace substring instruction
SCL
Description
out := REPLACE(
in1:=_string_in_,
in2:=_string_in_,
L:=_int_in_,
p:=_int_in);
Data type
Description
IN1
IN
String
Input string
IN2
IN
String
IN
Int
IN
Int
OUT
OUT
String
Result string
If parameter L is equal to zero, then the string IN2 is inserted at position P of string IN1
without deleting any characters from string IN1.
If P is equal to one, then the first L characters of string IN1 are replaced with string IN2
characters.
272
Extended instructions
8.2 String and character
Table 8- 66
ENO
ENO status
Condition
OUT
No errors detected
Valid characters
8.2.4.7
Table 8- 67
FIND
Find substring instruction
LAD / FBD
Table 8- 68
SCL
Description
out := FIND(
in1:=_string_in_,
in2:=_string_in);
Data type
Description
IN1
IN
String
IN2
IN
String
OUT
OUT
Int
273
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
Table 8- 69
ENO
ENO status
Condition
OUT
No errors detected
8.3
8.3.1
274
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
8.3.2
Table 8- 70
LAD / FBD
SCL
"RDREC_DB"(
req:=_bool_in_,
ID:=_word_in_,
index:=_dint_in_,
mlen:=_uint_in_,
valid=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_dword_out_,
len=>_uint_out_,
record:=_variant_inout_);
"WRREC_DB"(
req:=_bool_in_,
ID:=_word_in_,
index:=_dint_in_,
len:=_uint_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_dword_out_,
record:=_variant_inout_);
Description
Use the RDREC instruction to read a data
record with the number INDEX from the
component addressed by the ID, such as
a central rack or a distributed component
(PROFIBUS DP or PROFINET IO).
Assign the maximum number of bytes to
read in MLEN. The selected length of the
target area RECORD should have at
least the length of MLEN bytes.
In the SCL examples, "RDREC_DB" and "WRREC_DB" are the names of the instance DBs.
275
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
Table 8- 71
Data type
Description
REQ
IN
Bool
ID
IN
HW_IO (Word)
"Hardware identifier"
Note: Not all devices display their Hardware identifiers,
however.
PLC tags
IN
MLEN
IN
VALID
OUT
Bool
New data record was received and valid (RDREC). The VALID
bit is TRUE for one scan, after the last request was completed
with no error.
DONE
OUT
Bool
BUSY
OUT
Bool
ERROR
OUT
Bool
STATUS
OUT
DWord
LEN
OUT (RDREC)
IN (WRREC)
UInt
IN_OUT
Variant
RECORD
276
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
The RDREC and WRREC instructions operate asynchronously, that is, processing covers
multiple instruction calls. Start the job by calling RDREC or WRREC with REQ = 1.
The job status is displayed via output parameter BUSY and the two central bytes of output
parameter STATUS. The transfer of the data record is complete when the output parameter
BUSY has the value FALSE
TRUE (only for one scan) on the output parameter VALID (RDREC) or DONE (WRREC)
verifies that the data record has been successfully transferred into the target area RECORD
(RDREC) or to the target device (WRREC). In the case of the RDREC, the output parameter
LEN contains the length of the fetched data in bytes.
The output parameter ERROR (only for one scan when ERROR = TRUE) indicates that a
data record transmission error has occurred. In this case, the output parameter STATUS
(only for the one scan when ERROR = TRUE) contains the error information.
Data records are defined by the hardware device manufacturer. Refer to the hardware
manufacturer's device documentation for details about a data record.
Note
If a DPV1 slave is configured via GSD file (GSD rev. 3 and higher) and the DP interface of
the DP master is set to "S7 compatible", then you may not read any data records from the
I/O modules in the user program with "RDREC" or write to the I/O modules with "WRREC".
In this case, the DP master addresses the wrong slot (configured slot + 3).
Remedy: set the interface of the DP master to "DPV1".
Note
The interfaces of the "RDREC" and "WRREC" instructions are identical to the "RDREC" and
"WRREC" FBs defined in "PROFIBUS Guideline PROFIBUS Communication and Proxy
Function Blocks according to IEC 61131-3".
Note
If you use "RDREC" or "WRREC" to read or write a data record for PROFINET IO, then
negative values in the INDEX, MLEN, and LEN parameters will be interpreted as an
unsigned 16-bit integer.
277
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
8.3.3
RALRM
You can use the RALRM (Read alarm) instruction with PROFINET and PROFIBUS.
Table 8- 72
RALRM instruction
LAD / FBD
SCL
"RALRM_DB"(
mode:=_int_in_,
f_ID:=_word_in_,
mlen:=_uint_in_,
new=>_bool_out_,
status=>_dword_out_,
ID=>_word_out_,
len=>_uint_out_,
tinfo:=_variant_inout_,
ainfo:=_variant_inout_);
Description
Use the RALRM (read alarm) instruction to read diagnostic
interrupt information from PROFIBUS or PROFINET I/O
modules/devices.
The information in the output parameters contains the start
information of the called OB as well as information of the
interrupt source.
Call RALRM in an interrupt OB to return information regarding
the event(s) that caused the interrupt. In the S7-1200, only
diagnostic interrupts (OB82) are supported.
Table 8- 73
Data type
Description
MODE
IN
Operating mode
F_ID
IN
HW_IO (Word)
"Hardware identifier"
Note: Not all devices display their Hardware identifiers.
PLC tags
MLEN
IN
NEW
OUT
Bool
STATUS
OUT
DWord
ID
OUT
HW_IO (Word)
278
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
Data type
Description
LEN
OUT
TINFO
IN_OUT
Variant
AINFO
IN_OUT
Variant
Note
If you call "RALRM" in an OB whose start event is not an I/O interrupt, the instruction will
provide correspondingly reduced information in its outputs.
Make sure to use different instance DBs when you call "RALRM" in different OBs. If you
evaluate data resulting from a "RALRM" call outside of the associated interrupt OB, you
should use a separate instance DB per OB start event.
Note
The interface of the "RALRM" instruction is identical to the "RALRM" FB defined in
"PROFIBUS Guideline PROFIBUS Communication and Proxy Function Blocks according to
IEC 61131-3".
Calling RALRM
You can call the RALRM instruction in three different operating modes (MODE).
Table 8- 74
MODE
Description
ID contains the hardware identifier of the I/O module that triggered the interrupt.
ID contains the hardware identifier of the I/O module that triggered the interrupt.
LEN produces an output of the amount in bytes of AINFO data that is returned.
If the hardware identifier assigned to input parameter F_ID has triggered the interrupt then:
ID contains the hardware identifier of the I/O module that triggered the interrupt. Should be the same
as the value at F_ID.
LEN produces an output of the amount in bytes of AINFO data that is returned.
279
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
Note
If you assign a destination area for TINFO or AINFO that is too short, RALRM cannot return
the full information.
MLEN can limit the amount of AINFO data that is returned.
Refer to the AINFO parameters and TINFO parameters of the online information system of
STEP 7 for information on how to interpret the TINFO and AINFO data.
8.3.4
Table 8- 75
Array element
Name
Description
STATUS[1]
Function_Num
B#16#00, if no error
STATUS[2]
Error_Decode
STATUS[3]
Error_Code_1
Error ID
STATUS[4]
Error_Code_2
Table 8- 76
STATUS[2] values
Error_decode
(B#16#....)
Source
Description
00 to 7F
CPU
No error or no warning
80
DPV1
81 to 8F
CPU
FE, FF
DP Profile
Profile-specific error
Table 8- 77
STATUS[3] values
Error_decode
(B#16#....)
Error_code_1
(B#16#....)
Explanation (DVP1)
Description
00
00
70
00
Reserved, reject
No error, no warning
01
Reserved, reject
280
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
Error_decode
(B#16#....)
80
Error_code_1
(B#16#....)
Explanation (DVP1)
Description
02
Reserved, reject
90
Reserved, pass
92
Reserved, pass
93
Reserved, pass
96
A0
A1
Write error
A2
Module failure
A3
Reserved, pass
A4
Reserved, pass
A5
Reserved, pass
A7
Reserved, pass
A8
Version conflict
A9
AA to AF
User specific
B0
Invalid index
B1
B2
Invalid slot
B3
Type conflict
B4
Invalid area
B5
Status conflict
B6
Access denied
281
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
Error_decode
(B#16#....)
Error_code_1
(B#16#....)
Explanation (DVP1)
Description
B7
Invalid range
B8
Invalid parameter
B9
Invalid type
BA to BF
User specific
C0
82
C1
Write constraint conflict The data of the previous write request to the module for
the same data record has not yet been processed by the
module.
C2
Resource busy
C3
Resource unavailable
C4
C5
C6
C7
C8 to CF
Dx
81
User specific
00 to FF
00
00 to FF
282
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
Error_decode
(B#16#....)
Error_code_1
(B#16#....)
88
00 to FF
Explanation (DVP1)
Description
Error in the eighth call parameter (with "RALRM
(Page 278)": TINFO)
Note: Refer to the online information system of STEP 7
for immediate access to information on how to interpret
the "TINFO" returned buffers.
89
01
Wrong syntax ID
23
24
Wrong range ID
32
3A
00 to FF
01
Wrong syntax ID
23
24
Wrong range ID
32
3A
8A
00 to FF
8F
00 to FF
FE, FF
00 to FF
Profile-specific error
283
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
8.3.5
Table 8- 78
LAD / FBD
SCL
ret_val := DPRD_DAT(
laddr:=_word_in_,
record=>_variant_out_);
Description
ret_val := DPWR_DAT(
laddr:=_word_in_,
record:=_variant_in_);
The CPU supports up to 64 bytes of consistent data. For consistent data areas greater than
64 bytes, the DPRD_DAT and DPWR_DAT instructions must be used. If required, these
instructions can be used for data areas of 1 byte or greater. If access is rejected, error code
W#16#8090 will result.
Note
If you are using the DPRD_DAT and DPWR_DAT instructions with consistent data, you must
remove this consistent data from the process-image automatic update. Refer to "PLC
concepts: Execution of the user program" (Page 67) for more information.
Table 8- 79
Data type
Description
LADDR
HW_IO (Word)
IN
Configured start address from the "I" area of the module from which
the data will be read (DPRD_DAT)
Configured start address from the process image output area of the
module to which the data will be written (DPWR_DAT)
Addresses have to be entered in hexadecimal format (for example, an
input or output address of 100 means: LADDR:=W#16#64).
RECORD
OUT
Variant
Destination area for the user data that were read (DPRD_DAT) or source
area for the user data to be written (DPWR_DAT). This must be exactly
as large as you configured for the selected module with STEP 7. Only the
data type Byte is permitted.
RET_VAL
OUT
Int
If an error occurs while the function is active, the return value contains an
error code.
284
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
DPRD_DAT operations
The destination area must have the same length as configured for the selected module with
STEP 7. If no error occurs during the data transfer, the data that have been read are entered
into the destination area identified by RECORD.
If you read from a DP standard slave with a modular design or with several DP identifiers,
you can only access the data of one module/DP identifier for each DPRD_DAT instruction
call, specifying the configured start address.
DPWR_DAT operations
You transfer the data in RECORD consistently to the addressed DP standard
slave/PROFINET IO. The data is transferred synchronously, that is, the write process is
completed when the instruction is completed.
The source area must have the same length as you configured for the selected module with
STEP 7.
If the DP standard slave has a modular design, you can only access one module of the DP
slave.
Table 8- 80
Error code
Description
0000
No error occurred
808x
8090
You have not configured a module for the specified logical base address.
You have ignored the restriction concerning the length of consistent data.
You have not entered the start address in the LADDR parameter in hexadecimal format.
8092
8093
No DP module/PROFINET IO device from which you can read (DPRD_DAT) or to which you can
write (DPWR_DAT) consistent data exists at the logical address specified in LADDR.
80A0
Access error detected while the I/O devices were being accessed (DPRD_DAT).
80A1
Access error detected while the I/O devices were being accessed (DPWR_DAT).
80B0
80B1
The length of the specified destination (DPRD_DAT) or source (DPWR_DAT) area is not identical to
the user data length configured with STEP 7 Basic.
87xy, 808x
85xy
80C0
The data have not yet been read by the module (DPRD_DAT).
80C1
The data of the previous write job on the module have not yet been processed by the module
(DPWR_DAT).
8xyy1
285
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
Refer to "Extended instructions, Distributed I/O: Error information for RDREC, WRREC, and
RALRM" (Page 280) for more information on general error codes.
Note
If you access DPV1 slaves, error information from these slaves can be forwarded from the
DP master to the instruction.
8.3.6
DPNRM_DG
You can use the DPNRM_DG (Read diagnostic data) instruction with PROFIBUS.
Table 8- 81
LAD / FBD
Table 8- 82
DPNRM_DG instruction
SCL
ret_val := DPNRM_DG(
req:=_bool_in_,
laddr:=_word_in_,
record=>_variant_out_,
busy=>_bool_out_);
Description
Use the DPNRM_DG instruction to read the current diagnostic data of
a DP slave in the format specified by EN 50 170 Volume 2,
PROFIBUS. The data that has been read is entered in the destination
area indicated by RECORD following error-free data transfer.
Data type
Description
REQ
IN
Bool
LADDR
IN
HW_DPSLAVE
RET_VAL
OUT
Int
If an error occurs while the function is active, the return value contains
an error code. If no error occurs, the length of the data actually
transferred is entered in RET_VAL.
RECORD
OUT
Variant
Destination area for the diagnostic data that were read. Only the Byte
data type is permitted. The minimum length of the data record to be
read or the destination area is 6. The maximum length of the data
record to be sent is 240.
Standard slaves can provide more than 240 bytes of diagnostic data up
to a maximum of 244 bytes. In this case, the first 240 bytes are
transferred to the destination area, and the overflow bit is set in the
data.
BUSY
OUT
Bool
You start the read job by assigning 1 to the input parameter REQ in the DPNRM_DG
instruction call. The read job is executed asynchronously, in other words, it requires several
DPNRM_DG instruction calls. The status of the job is indicated by the output parameters
RET_VAL and BUSY.
S7-1200 Programmable controller
286
Extended instructions
8.3 Distributed I/O (PROFINET, PROFIBUS, or AS-i)
Table 8- 83
Byte
Description
Station status 1
Station status 2
Station status 3
6 ...
Table 8- 84
Error code
Description
Restriction
0000
No error
7000
First call with REQ=0: No data transfer active; BUSY has the value 0.
7001
First call with REQ =1: No data transfer active; BUSY has the value 1.
Distributed I/Os
7002
Interim call (REQ irrelevant): Data transfer already active; BUSY has the
value 1.
Distributed I/Os
8090
8092
8093
LADDR specifies the I/O device instead of specifying the station. Select
the station (and not the image of the device) in the "Network" view of
the "Device configuration" to determine the diagnostic address for
LADDR.
DP protocol error at layer 2 (for example, slave failure or bus problems) Distributed I/Os
80A2
80A3
Distributed I/Os
80A4
80B0
80B1
80B2
80B3
Actual module type does not match the required module type.
80C0
80C1
The data of the previous write job for the same data record on the module
have not yet been processed by the module.
287
Extended instructions
8.4 Interrupts
Error code
Description
Restriction
80C2
80C3
80C4
80C5
Distributed I/Os
80C6
Data record transfer was stopped due to a priority class abort (restart or
background)
Distributed I/Os
8xyy1
Refer to "Extended instructions, Distributed I/O: Error information for RDREC, WRREC, and
RALRM" (Page 280) for more information on general error codes.
8.4
Interrupts
8.4.1
Table 8- 85
LAD / FBD
Description
ret_val := ATTACH(
ob_nr:=_int_in_,
event:=_event_att_in_,
add:=_bool_in_);
ret_val := DETACH(
ob_nr:=_int_in_,
event:=_event_att_ in);
288
Extended instructions
8.4 Interrupts
Table 8- 86
Data type
Description
OB_NR
IN
OB_ATT
EVENT
IN
EVENT_ATT
ADD
(ATTACH only)
IN
Bool
RET_VAL
OUT
Int
289
Extended instructions
8.4 Interrupts
Check box options within the PLC device configuration:
Digital input
Enable rising edge detection
Enable falling edge detection
High-speed counter (HSC)
Enable this high-speed counter for use
Generate interrupt for counter value equals reference value count
Generate interrupt for external reset event
Generate interrupt for direction change event
OB_NR parameter
All existing hardware-interrupt OB names appear in the device configuration "HW interrupt:"
drop-down list and in the ATTACH / DETACH parameter OB_NR drop-list.
EVENT parameter
When a hardware interrupt event is enabled, a unique default event name is assigned to this
particular event. You can change this event name by editing the "Event name:" edit box, but
it must be a unique name. These event names become tag names in the "Constants" tag
table, and appear on the EVENT parameter drop-down list for the ATTACH and DETACH
instruction boxes. The value of the tag is an internal number used to identify the event.
General operation
Each hardware event can be attached to a hardware-interrupt OB which will be queued for
execution when the hardware interrupt event occurs. The OB-event attachment can occur at
configuration time or at run time.
290
Extended instructions
8.4 Interrupts
You have the option to attach or detach an OB to an enabled event at configuration time. To
attach an OB to an event at configuration time, you must use the "HW interrupt:" drop-down
list (click on the down arrow on the right) and select an OB from the list of available
hardware-interrupt OBs. Select the appropriate OB name from this list, or select "<not
connected>" to remove the attachment.
You can also attach or detach an enabled hardware interrupt event during run time. Use the
ATTACH or DETACH program instructions during run time (multiple times if you wish) to
attach or detach an enabled interrupt event to the appropriate OB. If no OB is currently
attached (either from a "<not connected>" selection in device configuration, or as a result of
executing a DETACH instruction), the enabled hardware interrupt event is ignored.
DETACH operation
Use the DETACH instruction to detach either a particular event or all events from a particular
OB. If an EVENT is specified, then only this one event is detached from the specified
OB_NR; any other events currently attached to this OB_NR will remain attached. If no
EVENT is specified, then all events currently attached to OB_NR will be detached.
Condition codes
Table 8- 87
Condition codes
RET_VAL (W#16#....)
Description
No error
0001
8090
8091
OB is wrong type
8093
8.4.2
Cyclic interrupts
8.4.2.1
Table 8- 88
ENO
0000
LAD / FBD
SCL
ret_val := SET_CINT(
ob_nr:=_int_in_,
cycle:=_udint_in_,
phase:=_udint_in_);
Description
Set the specified interrupt OB to begin cyclic execution
that interrupts the program scan.
291
Extended instructions
8.4 Interrupts
Table 8- 89
Data type
Description
OB_NR
IN
OB_CYCLIC
CYCLE
IN
UDInt
PHASE
IN
UDInt
RET_VAL
OUT
Int
2%
+LJKHUSULRULW\
2%
ORZSULRULW\
If you want to start the execution of a lower priority OB on a fixed time cycle, then phase shift
time should be greater then the processing time of higher priority OBs.
2%FDOOZLWKSKDVHVKLIW
581
W
2%
+LJKHUSULRULW\
W
2%
ORZSULRULW\
3KDVHVKLIW
292
Extended instructions
8.4 Interrupts
Table 8- 90
8.4.2.2
Table 8- 91
RET_VAL (W#16#....)
Description
0000
No error
8090
8091
8092
80B2
LAD / FBD
Table 8- 92
Condition codes
SCL
ret_val := QRY_CINT(
ob_nr:=_int_in_,
cycle=>_udint_out_,
phase=>_udint_out__,
status=>_word_out_);
Description
Get parameter and execution status from a cyclic
interrupt OB. The values that are returned existed
at the time QRY_CINT was executed.
Data type
Description
OB_NR
IN
OB_CYCLIC
RET_VAL
OUT
Int
CYCLE
OUT
UDInt
PHASE
OUT
UDInt
STATUS
OUT
Word
Table 8- 93
STATUS parameter
Bit
Value
Description
During startup
1
2
4
293
Extended instructions
8.4 Interrupts
Bit
Value
Other Bits
Description
Always 0
If an error occurs, RET_VAL displays the appropriate error code and the parameter STATUS
= 0.
Table 8- 94
8.4.3
RET_VAL parameter
RET_VAL (W#16#....)
Description
0000
No error
8090
80B2
Table 8- 95
LAD / FBD
Table 8- 96
SCL
Description
ret_val := SRT_DINT(
ob_nr:=_int_in_,
dtime:=_time_in_,
sign:=_word_in_);
ret_val := CAN_DINT(
ob_nr:=_int_in_);
ret_val := QRY_DINT(
ob_nr:=_int_in_,
status=>_word_out_);
Data type
Description
OB_NR
IN
OB_DELAY
DTIME 1
IN
Time
294
Extended instructions
8.4 Interrupts
Data type
Description
SIGN 1
Word
IN
RET_VAL
OUT
Int
STATUS
OUT
Word
Operation
The SRT_DINT instruction specifies a time delay, starts the internal time delay timer, and
associates a time delay interrupt OB subprogram with the time delay timeout event. When
the specified time delay has elapsed, a program interrupt is generated that triggers the
execution of the associated time delay interrupt OB. You can cancel an in-process time
delay interrupt before the specified time delay occurs by executing the CAN_DINT
instruction. The total number of active time delay and cyclic interrupt events must not exceed
four.
Bit
Value
Description
In RUN
In startup
1
2
295
Extended instructions
8.4 Interrupts
Bit
Value
Description
Other bits
Always 0
Condition codes
Table 8- 98
8.4.4
RET_VAL (W#16#...)
Description
0000
No error occurred
8090
8091
80A0
Table 8- 99
LAD / FBD
Description
DIS_AIRT();
DIS_AIRT delays the processing of new interrupt events. You can execute
DIS_AIRT more than once in an OB.
EN_AIRT();
EN_AIRT enables the processing of interrupt events that you previously disabled
with the DIS_AIRT instruction. Each DIS_AIRT execution must be cancelled by an
EN_AIRT execution.
The EN_AIRT executions must occur within the same OB, or any FC or FB called
from the same OB, before interrupts are enabled again for this OB.
WARNING
If the filter time for a digital input channel is changed from a previous setting, a new "0"
level input value may need to be presented for up to 20.0 ms accumulated duration before
the filter becomes fully responsive to new inputs. During this time, short "0" pulse events of
duration less than 20.0 ms may not be detected or counted.
This changing of filter times can result in unexpected machine or process operation, which
may cause death or serious injury to personnel, and/or damage to equipment.
To ensure that a new filter time goes immediately into effect, a power cycle of the CPU
must be applied.
296
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
OUT
Data type
Description
Int
The DIS_AIRT executions are counted by the operating system. Each of these remains in
effect until it is cancelled again specifically by an EN_AIRT instruction, or until the current OB
has been completely processed. For example: if you disabled interrupts five times with five
DIS_AIRT executions, you must cancel these with five EN_AIRT executions before interrupts
become enabled again.
After the interrupt events are enabled again, the interrupts that occurred while DIS_AIRT was
in effect are processed, or the interrupts are processed as soon as the current OB has been
executed.
Parameter RET_VAL indicates the number of times that interrupt processing was disabled,
which is the number of queued DIS_AIRT executions. Interrupt processing is only enabled
again when parameter RET_VAL = 0.
8.5
8.5.1
Diagnostic instructions
The following diagnostic instructions can be used with either PROFINET or PROFIBUS:
GET_DIAG instruction (Page 302): You can read the diagnostic information from a
specified device.
DeviceStates instruction (Page 299): You can retrieve the operational states for a
distributed I/O device within an I/O subsystem.
ModuleStates instruction (Page 301): You can retrieve the operational states for the
modules in a distributed I/O device.
LED instruction (Page 298): You can read the state of the LEDs for a distributed I/O
device.
8.5.2
297
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
As shown in the following table, the CPU supports diagnostics that can be configured for the
components of the distributed I/O system. Each of these errors generates a log entry in the
diagnostic buffer.
Table 8- 101 Handling of diagnostic events for PROFINET and PROFIBUS
Type of error
Yes
Yes
Yes
Yes
Diagnostic error
No
Yes
No
Yes
Yes
Yes
I/O access error example cause: A module that has been removed.
Peripheral access error example cause: Acyclic communication to a submodule that is not communicating.
Use the GET_DIAG instruction (Page 302) for each station to obtain the diagnostic
information. This will allow you to programmatically handle the errors encountered on the
device and if desired take the CPU to STOP mode. This method requires you to specify the
hardware device from which to read the status information.
The GET_DIAG instruction uses the "L address" (LADDR) of the station to obtain the health
of the entire station. This L Address can be found within the Network Configuration view and
by selecting the entire station rack (entire gray area), the L Address is shown in the
Properties Tab of the station. You can find the LADDR for each individual module either in
the properties for the module (in the device configuration) or in the default tag table for the
CPU.
8.5.3
LED instruction
SCL
ret_val := LED(
laddr:=_word_in_,
LED:=_uint_in_);
Description
Use the LED instruction to read the state of the LEDs on a CPU or
interface. The specified LED state is returned by the RET_VAL
output.
Data type
Description
LADDR
IN
HW_IO
LED
IN
UInt
RUN/STOP
Error
Color 1 = red
298
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
RET_VAL
1
Data type
OUT
Int
Description
3
Maintenance
Color 1 = yellow
Redundancy
Not applicable
Link
Color 1 = green
Tx/Rx
Color 1 = yellow
For example, you can select the CPU (such as "PLC_1") or the PROFINET interface from the drop-down list of the
parameter.
Description
0 to 9 LED state
8091
Off
Color 1 On (solid)
Color 2 On (Solid)
Color 1 flashing at 2 Hz
Color 2 flashing 2 Hz
Color 1 on (Tx/Rx)
Color 2 on (Tx/Rx)
8092
8093
80Bx
8.5.4
DeviceStates instruction
SCL
Description
ret_val := DeviceStates(
laddr:=hw_io_in_,
mode:=_uint_in_,
state:=_variant_inout_);
299
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
Table 8- 106 Data types for the parameters
Parameter and type
Data type
Description
LADDR
IN
HW_IOSYSTEM
MODE
IN
UInt
Status type:
2: Device defective
3: Device disabled
4: Device exists
RET_VAL
OUT
Int
STATE1
InOut
Variant
Buffer that receives the error status of each device: The data type
that you choose for the STATE parameter can be any bit type
(Bool, Byte, Word, or DWord) or an array of a bit type
Summary bit: Bit 0 =1, if one of the state bits of the I/O devices
is 1
For PROFIBUS-DP, the length of the status information is 128 bits. For PROFINET I/O, the length is 1024 bits.
After execution, the STATE parameter contains the error state of each I/O device as a bit list
(for the assigned LADDR and MODE).
Description
No error
8091
8092
8093
Invalid data type assigned for STATE parameter: Valid data types are (Bool, Byte, Word, or
Dword), or an array of (Bools, Bytes, Words, or Dwords)
80Bx
8452
The complete state data is too large for the assigned STATE parameter. The STATE buffer
contains a partial result.
300
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
8.5.5
ModuleStates instruction
SCL
ret_val := ModuleStates(
laddr:=_word_in_,
mode:=_uint_in,
state:=_variant_inout);
Description
ModuleStates retrieves the operational states
of I/O modules. After execution, the STATE
parameter contains the error state of each I/O
module in a bit list (for the assigned LADDR
and MODE). This information corresponds
with the module status seen in the STEP 7
diagnostics view.
Data type
Description
LADDR
IN
HW_DEVICE
MODE
IN
UInt
Status type:
2: Module defective
3: Module disabled
4: Module exists
RET_VAL
OUT
Int
STATE1
InOut
Variant
Buffer that receives the error status of each module: The data type
you use for the STATE parameter can be any bit type (Bool, Byte,
Word, or DWord) or an array of a bit type.
Summary bit: Bit 0 =1, if one of the state bits of the I/O module
is 1
A maximum of 128 bits can be assigned. The number of bits required is dependent on your I/O module usage.
Description
No error
8091
8092
8093
Invalid data type for STATE parameter: Valid data types are (Bool, Byte, Word, or Dword), or
an array of (Bools, Bytes, Words, or Dwords).
301
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
RET_VAL ( W#16#...)
Description
80Bx
8452
The complete state data is too large for the assigned STATE parameter. The STATE buffer
contains a partial result.
8.5.6
GET_DIAG instruction
Description
You can use the "GET_DIAG" instruction to read out the diagnostic information of a
hardware object. The hardware object is selected with the LADDR parameter. With the
MODE parameter, you select which diagnostic information is to be read out.
Table 8- 111 GET_DIAG instruction
LAD / FBD
SCL
Description
ret_val := GET_DIAG(
mode:=_uint_in_,
laddr:=_word_in_,
cnt_diag=>_uint_out_,
diag:=_variant_inout_,
detail:=_variant_inout_);
Parameters
The following table shows the parameters of the "GET_DIAG" instruction:
Table 8- 112 Data types for the parameters
Parameter and type
Data type
Description
MODE
IN
UInt
LADDR
IN
HW_ANY (Word)
RET_VAL
OUT
Int
CNT_DIAG
OUT
UInt
DIAG
InOut
Variant
DETAILS
InOut
Variant
302
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
MODE parameter
Depending on the value at the MODE parameter, different diagnostics data is output at the
DIAG, CNT_DIAG and DETAILS output parameters:
Table 8- 113 MODE parameter
MODE
Description
DIAG
CNT_DIAG
DETAILS
Module status
information in
accordance with the
DiagnosticsDetails
structure.
DIS structure
With the MODE parameter = 1, the diagnostics information is output in accordance with the
DIS structure. The following table shows the meaning of the individual parameter values:
Table 8- 114 Structure of the Diagnostic Information Source (DIS)
Parameter
Data type
Value
MaintenanceState
DWord
Enum
Description
No maintenance required
Maintenance required
Maintenance demanded
Error
10
303
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
Parameter
Data type
Value
Description
Componentstate
Detail
DWord
Bit array
0 to 2
(enum)
Additional information:
7 to 10
11 to 14
15
16 to 31
OwnState
IO State
Uint16
Uint16
Enum
No fault
Maintenance required
Maintenance demanded
Error
The module or the device cannot be reached from the CPU (valid for
modules and devices below a CPU).
Bit array
Bit 4 = 1: Error
304
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
Parameter
OperatingState
Data type
UInt16
Value
Description
Bit 5 = 1: The module or the device cannot be reached from the CPU
(valid for modules and devices below a CPU).
8 to 15
Reserved (always = 0)
Enum
0
In STOP
Memory reset
In START
In RUN
In HOLD
10
11
12
Module defective
13
14
No power
15
CiR
16
17
In
18
19
20
DiagnosticsDetail structure
With the MODE parameter = 2, the diagnostics information details are output in accordance
with the DiagnosticsDetail structure. The following table shows the meaning of the individual
parameter values:
Table 8- 115 Structure of the DiagnosticsDetail
Parameter
Data type
Description
ChannelNumber
UInt
Channel number
Properties
Word
ALID
UInt
Qualifier
DWord
ErrorType
UDInt
ExtErrorType
UDInt
Identification ID of alarm
305
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
Parameter
Data type
Description
AddValue_1
UInt
Additional value
AddValue_2
UInt
Additional value
AddValue_3
UInt
Additional value
AddValue_4
UInt
Additional value
DNN structure
With the MODE parameter = 2, the diagnostics information details are output in accordance
with the DNN structure. The following table shows the meaning of the individual parameter
values:
Table 8- 116 Structure of the Diagnostic Navigation Node (DNN)
Parameter
Data type
Value
Description
SubordinateState
UINT
Enum
SubordinateIOState
WORD
Bitarray
DNNmode
WORD
Bitarray
RET_VAL parameter
Table 8- 117 Error codes of the RET_VAL parameter
Error code
Description
(W#16#...)
0
No error
The data area in the DETAILS parameter is too small. Not all details of the diagnostic data can be
output.
8080
8081
Type in the DIAG parameter is not supported with the selected mode (parameter MODE).
8082
Type in the DETAILS parameter is not supported with the selected mode (parameter MODE).
8090
8091
80C1
306
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
Example
The following ladder logic network and DB show how to use the three modes with the three
structures:
DIS
DiagnosticsDetail
DNN
307
Extended instructions
8.5 Diagnostics (PROFINET or PROFIBUS)
DNN
DIS
DiagnosticsDetail
Note
In the DB, you must manually type in the data type to access each of the three structures;
there is no dropdown list selection. Type in the data types exactly as shown below:
DNN
DIS
DiagnosticsDetail
308
Extended instructions
8.6 Pulse
8.6
Pulse
8.6.1
CTRL_PWM instruction
SCL
"CTRL_PWM_DB"(
PWM:=_word_in_,
enable:=_bool_in_,
busy=>_bool_out_,
status=>_word_out_);
Description
Provides a fixed cycle time output with a variable duty
cycle. The PWM output runs continuously after being
started at the specified frequency (cycle time). The
pulse width is varied as required to affect the desired
control.
CTRL_HSC
Data type
Description
PWM
IN
HW_PWM
(Word)
ENABLE
IN
Bool
BUSY
OUT
Bool
STATUS
OUT
Word
The CTRL_PWM instruction stores the parameter information in the DB. The data block
parameters are not separately changed by the user, but are controlled by the CTRL_PWM
instruction.
Specify the enabled pulse generator to use, by using its tag name for the PWM parameter.
When the EN input is TRUE, the PWM_CTRL instruction starts or stops the identified PWM
based on the value at the ENABLE input. Pulse width is specified by the value in the
associated Q word output address.
Because the CPU processes the request when the CTRL_PWM instruction is executed,
parameter BUSY will always report FALSE. If an error is detected, then ENO is set to
FALSE, and parameter STATUS contains a condition code.
309
Extended instructions
8.6 Pulse
The pulse width will be set to the initial value configured in device configuration when the
CPU first enters RUN mode. You write values to the Q-word location specified in device
configuration ("Output addresses" / "Start address:") as needed to change the pulse width.
You use an instruction such as a move, convert, math, or PID box to write the desired pulse
width to the appropriate Q word. You must use the valid range for the Q-word value (percent,
thousandths, ten-thousandths, or S7 analog format).
Note
Digital I/O points assigned to PWM and PTO cannot be forced
The digital I/O points used by the pulse-width modulation (PWM) and pulse-train output
(PTO) devices are assigned during device configuration. When digital I/O point addresses
are assigned to these devices, the values of the assigned I/O point addresses cannot be
modified by the Watch table force function.
Description
No error
80A1
Condition code1
Description
8022
8023
8024
8025
8028
8029
8030
803A
If one of these errors occurs when a code block is executed, the CPU goes to STOP mode unless you use the GetError
or GetErrorID instructions within that code block to create a programmed reaction to the error.
310
Extended instructions
8.6 Pulse
8.6.2
Cycle time
Pulse width
Since the PWM output can be varied from 0 to full scale, it provides a digital output that in
many ways is the same as an analog output. For example, the PWM output can be used to
control the speed of a motor from stop to full speed, or it can be used to control position of a
valve from closed to fully opened.
Two pulse generators are available for controlling high-speed pulse output functions: PWM
and Pulse train output (PTO). PTO is used by the motion control instructions. You can assign
each pulse generator to either PWM or PTO, but not both at the same time.
The two pulse generators are mapped to specific digital outputs as shown in the following
table. You can use onboard CPU outputs, or you can use the optional signal board outputs.
The output point numbers are shown in the following table (assuming the default output
configuration). If you have changed the output point numbering, then the output point
numbers will be those you assigned. Regardless, PTO1/PWM1 uses the first two digital
outputs, and PTO2/PWM2 uses the next two digital outputs, either on the CPU or on the
attached signal board. Note that PWM requires only one output, while PTO can optionally
use two outputs per channel. If an output is not required for a pulse function, it is available
for other uses.
NOTICE
Pulse-train outputs cannot be used by other instructions in the user program
When you configure the outputs of the CPU or signal board as pulse generators (for use
with the PWM or motion control instructions), the corresponding outputs addresses (Q0.0,
Q0.1, Q4.0, and Q4.1) are removed from the Q memory and cannot be used for other
purposes in your user program. If your user program writes a value to an output used as a
pulse generator, the CPU does not write that value to the physical output.
Pulse
Direction
Built-in I/O
Q0.0
Q0.1
SB I/O
Q4.0
Q4.1
Built-in outputs
Q0.0
SB outputs
Q4.0
PTO 0
PWM 0
PTO 1
311
Extended instructions
8.6 Pulse
Description
Pulse
Direction
Built-in I/O
Q0.2
Q0.3
SB I/O
Q4.2
Q4.3
Built-in outputs
Q0.2
SB outputs
Q4.2
Built-in I/O
Q0.41
Q0.51
SB I/O
Q4.0
Q4.1
Built-in outputs
Q0.41
SB outputs
Q4.1
Built-in I/O
Q0.62
Q0.72
SB I/O
Q4.2
Q4.3
Built-in outputs
Q0.62
SB outputs
Q4.3
PWM 1
PTO 2
PWM 2
PTO 3
PWM 3
8.6.3
The CPU 1211C does not have outputs Q0.4, Q0.5, Q0.6, or Q0.7. Therefore, these outputs
cannot be used in the CPU 1211C.
The CPU 1212C does not have outputs Q0.6 or Q0.7. Therefore, these outputs cannot be used in
the CPU 1212C.
This table applies to the CPU 1211C, CPU 1212C, CPU 1214C, and CPU 1215C PTO/PWM
functions.
312
Extended instructions
8.7 Data logging
You have the option to rename the pulse generator, add a comment, and assign parameters
as follows:
Pulse generator used as follows: PWM or PTO (choose PWM)
Output source: onboard CPU or SB
Time base: milliseconds or microseconds
Pulse width format:
Hundredths (0 to 100)
Thousandths (0 to 1000)
Ten-thousandths (0 to 10000)
S7 analog format (0 to 27648)
Cycle time: Enter your cycle time value. This value can only be changed in Device
configuration.
Initial pulse width: Enter your initial pulse width value. The pulse width value can be
changed during runtime.
Enter the start address to configure the output addresses. Enter the Q word address where
you want to locate the pulse width value.
NOTICE
Pulse-train outputs cannot be used by other instructions in the user program
When you configure the outputs of the CPU or signal board as pulse generators (for use
with the PWM or motion control instructions), the corresponding outputs addresses (Q0.0,
Q0.1, Q4.0, and Q4.1) are removed from the Q memory and cannot be used for other
purposes in your user program. If your user program writes a value to an output used as a
pulse generator, the CPU does not write that value to the physical output.
The default location is QW1000 for PWM1, and QW1002 for PWM2. The value at this
location controls the width of the pulse and is initialized to the "Initial pulse width:" value
specified above each time the CPU transitions from STOP to RUN mode. You change this
Q-word value during run time to cause a change in the pulse width.
8.7
Data logging
Your control program can use the Data log instructions to store run-time data values in
persistent log files. The data log files are stored in flash memory (CPU or memory card). Log
file data is stored in standard CSV (Comma Separated Value) format. The data records are
organized as a circular log file of a pre-determined size.
The Data log instructions are used in your program to create, open, write a record, and close
the log files. You decide which program values will be logged by creating a data buffer that
defines a single log record. Your data buffer is used as temporary storage for a new log
record. New current values must be programmatically moved into the buffer during run-time.
When all of the current data values are updated, you can execute the DataLogWrite
instruction to transfer data from the buffer to a data log record.
313
Extended instructions
8.7 Data logging
Use the built-in PLC Web server to manage your data log files. Download recent records, all
records, clear records, or delete log files with the "Data Logs" standard web page. After a
data log file is transferred to your PC, then you can analyze the data with standard
spreadsheet tools like Excel.
8.7.1
314
Extended instructions
8.7 Data logging
8.7.2
8.7.2.1
DataLogCreate
SCL
Description
"DataLogCreate_DB"(
req:=_bool_in_,
records:=_udint_in_,
format:=_uint_in_,
timestamp:=_uint_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
name:=_string_inout_,
ID:=_dword_inout_,
header:=_variant_inout_,
data:=_variant_inout_);
Data type
Description
REQ
IN
Bool
A low to high (positive edge) signal starts the operation. (Default value:
False)
RECORDS
IN
UDint
The maximum number of data records the circular data log can contain
before overwriting the oldest entry:
The header record is not included. Sufficient available PLC load memory
must exist in order to successfully create the data log. (Default value - 1)
FORMAT
TIMESTAMP
NAME
IN
IN
IN
UInt
UInt
Variant
Data time stamp format: Column headers for date and time fields are not
required. The time stamp uses the system time (Coordinated Universal Time
- UTC) and not the local time.
0 - No time stamp
Data log name: You provide the name. This variant only supports a String
data type and can only be located in local, DB, or M memory. (Default value:
' ')
The string reference is also used as the name of the data log file. The name
characters must follow the Windows file system naming restrictions.
Characters \ / : * ? " < > | and the space character are not allowed.
315
Extended instructions
8.7 Data logging
Data type
Description
ID
DWord
Data log numeric identifier: You store this generated value for use with other
Data log instructions. The ID parameter is only used as an output with the
DataLogCreate instruction. (Default value: 0)
In/Out
In/Out
Variant
Pointer to data log column header names for the top row of the data matrix
encoded in the CSV file. (Default value: null).
HEADER data must be located in DB or M memory.
The characters must follow standard CSV format rules with commas
separating each column name. The data type may be a string, byte array, or
character array. Character/byte arrays allow increased size, where strings
are limited to a maximum of 255 bytes.
The HEADER parameter is optional. If the HEADER is not parameterized,
then no header row is created in the Data log file.
DATA
In/Out
Variant
Pointer to the record data structure, user defined type (UDT), or array.
Record data must be located in DB or M memory.
The DATA parameter specifies the individual data elements (columns) of a
data log record and their data type. Structure data types are limited to a
single nesting level. The number of data elements declared should
correspond to the number of columns specified in the header parameter.
The maximum number of data elements you can assign is 253 (with a
timestamp) or 255 (without a timestamp). This restriction keeps your record
inside the 256 column limit of a Excel sheet.
DONE
OUT
Bool
The DONE bit is TRUE for one scan, after the last request was completed
with no error. (Default value: False)
BUSY
OUT
Bool
0 - No operation in progress
1 - Operation on progress
ERROR
OUT
Bool
The ERROR bit is TRUE for one scan, after the last request was terminated
with an error. The error code value at the STATUS parameter is valid only
during the single scan where ERROR = TRUE.
STATUS
OUT
Word
A data log file is created with a pre-determined fixed sized based on the RECORDS and
DATA parameters. The data records are organized as a circular log file. New records are
appended to the data log file, until the maximum number of records that is specified by the
RECORDS parameter is stored. The next record written will overwrite the oldest record.
Another record write operation will overwrite the next oldest data record and so on.
Note
If you want to prevent overwriting any data records, then you can use the DataLogNewFile
instruction to create a new data log based on the current data log, after the current data log
has stored the maximum number of records. New data records are stored in the new data
log file. The old data log file and record data remain in flash memory.
316
Extended instructions
8.7 Data logging
Memory resource usage:
The data logs consume only load memory.
There is no set limit for the total number of data logs. The size of all data logs combined
is limited by the available resources of load memory. Only eight data logs may be open at
one time.
The maximum possible number for the RECORDS parameter is the limit for an UDint
number (4,294,967,295). The actual limit for the RECORD parameter depends on the
size of a single record, the size of other data logs, and the available resources of load
memory. In addition, Excel limits the number of rows allowed in an Excel sheet.
Note
A DataLogCreate operation extends over many program scan cycles. The actual time
required for the log file creation depends on the record structure and number of records.
Your program logic must monitor and catch the DataLogCreate DONE bit's transition to
the TRUE state, before the new data log can be used for other data log operations.
STATUS (W#16#....)
Description
0000
No error
7000
7001
7002
8070
807F
Internal error
8090
8091
8093
8097
80B3
80B4
80C1
Too many open files: No more than eight opened data log files are allowed.
8253
8353
8453
8B24
8B51
8B52
8C24
8C51
8C52
317
Extended instructions
8.7 Data logging
8.7.2.2
DataLogOpen
SCL
Description
"DataLogOpen_DB"(
req:=_bool_in_,
mode:=_uint_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
name:=_string_inout_,
ID:=_dword_inout_);
Data type
Description
REQ
IN
Bool
A low to high (positive edge) signal starts the operation. (Default value:
False)
MODE
IN
UInt
Operation mode:
NAME
IN
Variant
Name of an existing data log: This variant only supports a String data type
and can only be located in local, DB, or M memory. (Default value: ' ')
ID
In/Out
DWord
DONE
OUT
Bool
The DONE bit is TRUE for one scan, after the last request was completed
with no error. (Default value: False)
BUSY
OUT
Bool
0 - No operation in progress
1 - Operation on progress
ERROR
OUT
Bool
The ERROR bit is TRUE for one scan, after the last request was
terminated with an error. The error code value at the STATUS parameter
is valid only during the single scan where ERROR = TRUE.
STATUS
OUT
Word
You can provide either the NAME or an ID (ID parameter as an input) of a pre-existing data
log. If you provide both parameters and a valid ID does correspond to the NAME data log,
then the ID is used, and the NAME ignored.
318
Extended instructions
8.7 Data logging
The NAME must be the name of a data log created by the DataLogCreate instruction. If only
the NAME is provided and the NAME specifies a valid data log, then the corresponding ID
will be returned (ID parameter as an output).
Note
General usage of data log files
Data log files are automatically opened after the DataLogCreate and DataLogNewFile
operations.
Data log files are automatically closed after a PLC run to stop transition or a PLC power
cycle.
A Data log file must be open before a new DataLogWrite operation is possible.
A maximum of eight data log files may be open at one time. More than eight data log files
may exist, but some of them must be closed so no more than eight are open.
STATUS (W#16#)
Description
0000
No error
0002
7000
7001
7002
8070
8090
8091
8092
80C0
80C1
Too many open files: No more than eight opened data log files are allowed.
8.7.2.3
DataLogClose
SCL
"DataLogClose_DB"(
req:=_bool_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
ID:=_dword_inout_);
Description
Closes an open data log file. DataLogWrite operations to
a closed data log result in an error. No write operations
are allowed to this data log until another DataLogOpen
operation is performed.
A transition to STOP mode will close all open data log
files.
STEP 7 automatically creates the associated instance
DB when you insert the instruction.
319
Extended instructions
8.7 Data logging
Table 8- 130 Data types for the parameters
Parameter and type
Data type
Description
REQ
IN
Bool
A low to high (positive edge) signal starts the operation. (Default value: False)
ID
In/Out
DWord
Numeric identifier of a data log. Only used as an input for the DataLogClose
instruction. (Default value: 0)
DONE
OUT
Bool
The DONE bit is TRUE for one scan after the last request was completed with
no error.
BUSY
OUT
Bool
0 - No operation in progress
1- Operation on progress
ERROR
OUT
Bool
The ERROR bit is TRUE for one scan, after the last request was terminated
with an error. The error code value at the STATUS parameter is valid only
during the single scan where ERROR = TRUE.
STATUS
OUT
Word
STATUS (W#16#)
Description
0000
No error
0001
7000
7001
7002
8092
8.7.2.4
DataLogWrite
SCL
"DataLogWrite_DB"(
req:=_bool_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
ID:=_dword_inout_);
Description
Writes a data record into the specified data log. The preexisting target data log must be open before a
DataLogWrite operation is allowed.
STEP 7 automatically creates the associated instance DB
when you insert the instruction.
320
Extended instructions
8.7 Data logging
Table 8- 133 Data types for the parameters
Parameter and type
Data type
Description
REQ
IN
Bool
A low to high (positive edge) signal starts the operation. (Default value: False)
ID
In/Out
DWord
Numeric data log identifier. Only used as an input for the DataLogWrite
instruction. (Default value: 0)
DONE
OUT
Bool
The DONE bit is TRUE for one scan, after the last request was completed with
no error.
BUSY
OUT
Bool
0 - No operation in progress
1 - Operation on progress
ERROR
OUT
Bool
The ERROR bit is TRUE for one scan, after the last request was terminated
with an error. The error code value at the STATUS parameter is valid only
during the single scan where ERROR = TRUE.
STATUS
OUT
Word
The memory address and data structure of the record buffer is configured by the DATA
parameter of a DataLogCreate instruction. You must programmatically load the record buffer
with current run-time process values and then execute the DataLogWrite instruction to move
new record data from the buffer to the data log.
The ID parameter identifies a data log and data record configuration. The ID number is
generated when a data log is created.
If there are empty records in the circular data log file, then the next available empty record
will be written. If all records are full, then the oldest record will be overwritten.
CAUTION
Potential for data log data loss during a CPU power failure
If there is a power failure during an incomplete DataLogWrite operation, then the data
record being transferred to the data log could be lost.
STATUS (W#16#)
Description
0000
No error
0001
Indicates that the data log is full: Each data log is created with a specified
maximum number of records. The last record of the maximum number has been
written. The next write operation will overwrite the oldest record.
7000
7001
7002
8070
8092
80B0
Data log file is not open (for explicit open mode only).
321
Extended instructions
8.7 Data logging
8.7.2.5
DataLogNewFile
SCL
Description
"DataLogNewFile_DB"(
req:=_bool_in_,
records=:_udint_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
name=:_DataLog_out_,
ID:=_dword_inout_);
Data type
Description
REQ
IN
Bool
A low to high (positive edge) signal starts the operation. (Default value:
False)
RECORDS
IN
UDInt
The maximum number of data records the circular data log can contain
before overwriting the oldest entry. (Default value: 1)
The header record is not included. Sufficient available CPU load memory
must exist in order to successfully create the data log.
NAME
IN
Variant
Data log name: You provide the name. This variant only supports a String
data type and can only be located in local, DB, or M memory. (Default value:
' ')
The string reference is also used as the name of the data log file. The name
characters must follow the Windows file system naming restrictions.
Characters \ / : * ? " < > | and the space character are not allowed.)
ID
In/Out
DWord
At execution, the ID input identifies a valid data log. The new data log
configuration is copied from this data log.
DONE
OUT
Bool
The DONE bit is TRUE for one scan, after the last request was completed
with no error.
BUSY
OUT
Bool
0 - No operation in progress
1 - Operation on progress
ERROR
OUT
Bool
The ERROR bit is TRUE for one scan, after the last request was terminated
with an error. The error code value at the STATUS parameter is valid only
during the single scan where ERROR = TRUE.
STATUS
OUT
Word
322
Extended instructions
8.7 Data logging
You can execute the DataLogNewFile instruction when a data log becomes full or is deemed
completed and you do not want to lose any data that is stored in the data log. A new empty
data log file can be created based on the structure of the full Data log file. The header record
will be duplicated from the original data log with the original data log properties (DATA record
buffer, data format, and timestamp settings). The original Data log file is implicitly closed and
the new Data log file is implicitly opened.
DataLogWrite parameter trigger: Your program must monitor the ERROR and STATUS
parameters of each DataLogWrite operation. When the final record is written and a data log
is full, the DataLogWrite ERROR bit = 1 and the DataLogWrite STATUS word = 1. These
ERROR and STATUS values are valid for one scan only, so your monitoring logic must use
ERROR = 1 as a time gate to capture the STATUS value and then test for STATUS = 1 (the
data log is full).
DataLogNewFile operation: When your program logic gets the data log is full signal, this
state is used to activate a DataLogNewFile operation. You must execute DataLogNewFile
with the ID of an existing (usually full) and open data log, but a new unique NAME
parameter. After the DataLogNewFile operation is done, a new data log ID value is returned
(as an output parameter) that corresponds to the new data log name. The new data log file is
implicitly opened and is ready to store new records. New DataLogWrite operations that are
directed to the new data log file, must use the ID value returned by the DataLogNewFile
operation.
Note
A DataLogNewFile operation extends over many program scan cycles. The actual time
required for the log file creation depends on the record structure and number of records.
Your program logic must monitor and catch the DataLogNewFile DONE bit's transition to the
TRUE state, before the new data log can be used for other data log operations.
STATUS (W#16#)
Description
0000
No error
7000
7001
7002
8070
8090
8091
8092
8093
8097
80B3
80B4
MC is write protected.
80C1
323
Extended instructions
8.7 Data logging
8.7.3
324
Extended instructions
8.7 Data logging
8.7.4
CPU 1211C
CPU 1212C
CPU 1214C
CPU 1215C
1 MB
(250 KB max.
for one Data
log file)
1 MB
(250 KB max.
for one Data
log file)
4 MB
4 MB
(500 KB max.
(500 KB max. for
for one Data log one Data log file)
file)
Data storage
User program and
program data,
configuration data,
Data logs, userdefined web pages,
and PLC system
data
325
Extended instructions
8.7 Data logging
4. Use the Online and diagnostic tools to get the load memory size and percentage of free
load memory space (Page 680).
5. Multiply the load memory size by the percentage that is free to obtain the current load
memory free space.
Data type
Bool
Byte
Word
DWord
12
Char
String
Example 1: MyString[10]
The maximum string size is assigned as 10 characters.
Text characters + automatic padding with blank characters = 10 bytes
Opening and closing double quote + comma characters = 3 bytes
10 + 3 = 13 total bytes
Example 2: Mystring2
If no size is assigned with square brackets, then 254 bytes is allocated by
default.
Text characters + automatic padding with blank characters = 254 bytes
Opening and closing double quote + comma characters = 3 bytes
254 + 3 = 257 total bytes
USInt
UInt
UDInt
12
SInt
Int
DInt
12
Real
16
LReal
25
Time
15
DTL
24
326
Extended instructions
8.7 Data logging
The DataLogCreate DATA parameter points to a structure that specifies the number of data
fields and the data type of each data field for one data log record. The table above gives the
bytes required in the CSV file for each data type. Multiply the number of occurrences of a
given data type by the number of bytes it requires. Do this for each data type in the record
and sum the number of bytes to get the total size of the data record. Add one byte for the
end of line character.
Size of a data log record = summation of bytes required for all data fields + 1 (the end of line
character).
8.7.5
327
Extended instructions
8.7 Data logging
Network 1 REQ rising edge starts the data log creation process.
Network 2 Capture the DONE output from DataLogCreate because it is only valid for one
scan.
328
Extended instructions
8.7 Data logging
Network 3 A positive edge signal triggers when to store new process values in the MyData
structure.
Network 4 The EN input state is based upon when the DataLogCreate operation is complete.
A create operation extends over many scan cycles and must be complete before executing a
write operation. The positive edge signal on the REQ input is the event that triggers an
enabled write operation.
Network 5 Close the data log once the last record has been written. After executing the
DataLogWrite operation that writes the last record, the log file full status is signaled when
DataLogWrite STATUS output = 1.
329
Extended instructions
8.7 Data logging
Network 6 A positive signal edge DataLogOpen REQ input simulates the user pushing a
button on an HMI that opens a data log file. If you open a Data log file that has all records
filled with process data, then the next DataLogWrite operation will overwrite the oldest
record. You may want to preserve the old Data log and instead create a new data log, as
shown in network 7.
Network 7 The ID parameter is an IN/OUT type. First, you supply the ID value of the existing
Data log whose structure you want to copy. After the DataLogNewFile operation is complete,
a new and unique ID value for the new Data log is written back to the ID reference location.
The required DONE bit = TRUE capture is not shown, refer to networks 1, 2, and 4 for an
example of DONE bit logic.
330
Extended instructions
8.7 Data logging
Data log files created by the example program viewed with the S7-1200 CPU Webserver
331
Extended instructions
8.8 Data block control
8.8
8.8.1
Description
READ_DBL(
req:=_bool_in_,
srcblk:=_variant_in_,
busy=>_bool_out_,
dstblk=>_variant_out_);
WRIT_DBL(
req:=_bool_in_,
srcblk:=_variant_in_,
busy=>_bool_out_,
dstblk=>_variant_out_);
Data type
Description
REQ
IN
BOOL
SRCBLK
IN
VARIANT
RET_VAL
OUT
INT
BUSY
OUT
BOOL
DSTBLK
OUT
VARIANT
332
Extended instructions
8.8 Data block control
Typically, a DB is stored in both load memory (flash) and work memory (RAM). The start
values (initial values) are always stored in load memory, and the current values are always
stored in work memory. READ_DBL can be used to copy a set of start values from load
memory to the current values of a DB in work memory that is referenced by your program.
You can use WRIT_DBL to update the start values stored in internal load memory or
memory card from current values in work memory.
Note
Avoid excessive WRIT_DBL flash memory write operations
The WRIT_DBL instruction performs write operations in flash memory (internal load memory
or memory card). WRIT_DBL should be used for infrequent updates like a production
process changes.
The data blocks used by READ_DBL and WRIT_DBL must have been previously created by
STEP 7 before you can use these instructions. If the source DB is created as a "standard"
type then the destination DB must also be the "standard" type. If the source data block is
created as an "optimized" type then the destination data block must also be the "optimized"
type.
If the DBs are standard, then you can specify either a tag name or a P# value. The P# value
allows you to specify and copy any number of elements of the specified size (Byte, Word, or
DWord). Thus, you can copy part or all of a DB. If the DBs are optimized, you can only
specify a tag name; you cannot use the P# operator. If you specify a tag name for either
standard or optimized DBs (or for other work-memory types), then whatever is referenced by
this tag name is copied. This could be a user-defined type, an array, or a basic element.
Type Struct can only be used by these instructions if the DB is standard, not optimized. You
must use a user-defined type (UDT) if it is a structure in optimized memory. Only a userdefined type ensures that the "data types" are exactly the same for both the source and
destination structures.
Note
Using a structure (data type Struct) in an "optimized" DB
When using a Struct data type with "optimzed" DBs, you must first create a user-defined
data type (UDT) for the Struct. You then configure both the source and destination DBs with
the UDT. The UDT ensures that the data types within the Struct remain consistent for both
DBs.
For "standard" DBs, you use the Struct without creating a UDT.
READ_DBL and WRIT_DBL execute asynchronously to the cyclic program scan. The
processing extends over multiple READ_DBL and WRIT_DBL calls. You start the DB
transfer job by calling with REQ = 1 and then monitor the BUSY and RET_VAL outputs to
determine when the data transfer is complete and correct.
To ensure data consistency, do not modify the destination area during the processing of
READ_DBL or the source area during the processing of WRIT_DBL (that is, as long as the
BUSY parameter is TRUE).
333
Extended instructions
8.8 Data block control
SRCBLK and DSTBLK parameter restrictions:
A data block must have been previously created before it can be referenced.
The length of a VARIANT pointer of type BOOL must be divisible by 8.
The length of a VARIANT pointer of type STRING must be the same in the source and
destination pointers.
Description
(W#16#...)
0000
No error
0081
Warning: that the source area is smaller than the destination area. The source data is copied
completely with the extra bytes in the destination area unchanged.
7000
7001
7002
8051
8081
The source area is larger than the destination area. The destination area is completely filled and the
remaining bytes of the source are ignored.
8251
82B1
82C0
8551
85B1
85C0
80C3
More than 50 READ_DBL or 50 WRIT_DBL statements are currently queued for execution.
334
Extended instructions
8.9 Common error codes for the "Extended" instructions
8.9
Description
8022
8023
8024
8025
8028
8029
8030
803A
If one of these errors occurs when a code block is executed the the CPU goes to STOP mode, unless you use the
GetError or GetErrorID instructions within that code block and create a programmed reaction to the error.
335
Extended instructions
8.9 Common error codes for the "Extended" instructions
336
Technology instructions
9.1
Table 9- 1
High-speed counter
CTRL_HSC instruction
LAD / FBD
SCL
"CTRL_HSC_0_DB" (
hsc:=_hw_hsc_in_,
dir:=_bool_in_,
cv:=_bool_in_,
rv:=_bool_in_,
period:=_bool_in_,
new_dir:=_int_in_,
new_cv:=_int_in_,
new_rv:=_dint_in_,
new_period:=_int_in_,
busy:=_bool_out_,
status:=_word_out_);
Description
Each CTRL_HSC instruction uses a structure stored in
a DB to maintain data. You assign the DB when the
CTRL_HSC instruction is placed in the editor.
Table 9- 2
Data type
Description
IN
HW_HSC
HSC identifier
DIR1, 2
IN
Bool
CV1
IN
Bool
RV1
IN
Bool
PERIOD1
IN
Bool
NEW_DIR
IN
Int
NEW_CV
IN
DInt
NEW_RV
IN
DInt
NEW_PERIOD
IN
Int
BUSY3
OUT
Bool
Function is busy
STATUS
OUT
Word
If an update of a parameter value is not requested, then the corresponding input values are ignored.
The DIR parameter is only valid if the configured counting direction is set to "User program (internal direction control)".
You determine how to use this parameter in the HSC device configuration.
For an HSC on the CPU or on the SB, the BUSY parameter always has a value of 0.
337
Technology instructions
9.1 High-speed counter
You configure the parameters for each HSC in the device configuration for the CPU:
counting mode, I/O connections, interrupt assignment, and operation as a high-speed
counter or as a device to measure pulse frequency.
Some of the parameters for the HSC can be modified by your user program to provide
program control of the counting process:
Set the counting direction to a NEW_DIR value
Set the current count value to a NEW_CV value
Set the reference value to a NEW_RV value
Set the period value (for frequency measurement mode) to a NEW_PERIOD value
If the following Boolean flag values are set to 1 when the CTRL_HSC instruction is executed,
the corresponding NEW_xxx value is loaded to the counter. Multiple requests (more than
one flag is set at the same time) are processed in a single execution of the CTRL_HSC
instruction.
DIR = 1 is a request to load a NEW_DIR value, 0 = no change
CV = 1 is a request to load a NEW_CV value, 0 = no change
RV = 1 is a request to load a NEW_RV value, 0 = no change
PERIOD = 1 is a request to load a NEW_PERIOD value, 0 = no change
The CTRL_HSC instruction is typically placed in a hardware interrupt OB that is executed
when the counter hardware interrupt event is triggered. For example, if a CV=RV event
triggers the counter interrupt, then a hardware interrupt OB code block executes the
CTRL_HSC instruction and can change the reference value by loading a NEW_RV value.
The current count value is not available in the CTRL_HSC parameters. The process image
address that stores the current count value is assigned during the hardware configuration of
the high-speed counter. You may use program logic to directly read the count value. The
value returned to your program will be a correct count for the instant in which the counter
was read. The counter will continue to count high-speed events. Therefore, the actual count
value could change before your program completes a process using an old count value.
Condition codes: In the case of an error, ENO is set to 0, and the STATUS output contains a
condition code.
Table 9- 3
STATUS
0
Description
No error
80A1
80B1
80B2
80B3
80B4
80C0
80D0
338
Technology instructions
9.1 High-speed counter
9.1.1
Table 9- 4
HSC
HSC1
HSC2
Single phase
CPU
100 KHz
80 KHz
High-speed SB
200 KHz
160 KHz
SB
30 KHz
20 KHz
CPU
100 KHz
80 KHz
High-speed SB
200 KHz
160 KHz
SB
30 KHz
20 KHz
HSC3
CPU
100 KHz
80 KHz
HSC4
CPU
30 KHz
20 KHz
HSC5
CPU
30 KHz
20 KHz
High-speed SB
200 KHz
160 KHz
SB
30 KHz
20 KHz
CPU
30 KHz
20 KHz
High-speed SB
200 KHz
160 KHz
SB
30 KHz
20 KHz
HSC6
339
Technology instructions
9.1 High-speed counter
Type
Input 1
Input 2
Input 3
Function
Clock
(Optional:
direction)
Count or frequency
Reset
Count
Clock
Direction
Count or frequency
Reset
Count
Clock up
Count or frequency
Reset
Count
Phase A
Count or frequency
Reset1
Count
Clock down
Phase B
340
Technology instructions
9.1 High-speed counter
HSC
HSC 1 1
1-phase
[d]
[R]
[d]
[R]
2-phase
CU
CD
[R]
CU
CD
[R]
[R]
AB-phase
HSC 2 1
HSC 3
HSC 5
[R]
1-phase
[R]
[d]
[R]
[d]
2-phase
[R]
CU
CD
[R]
CU
CD
AB-phase
[R]
[R]
1-phase
[d]
2-phase
CU
CD
AB-phase
2
1-phase
[d]
[R]
2-phase
CU
CD
[R]
[R]
AB-phase
S7-1200 Programmable controller
System Manual, 04/2012, A5E02486680-06
341
Technology instructions
9.1 High-speed counter
HSC
HSC 6 2
1-phase
[R]
[d]
2-phase
[R]
CU
CD
AB-phase
[R]
HSC 1 and HSC 2 can be configured for either the on-board inputs or for an SB.
HSC 5 and HSC 6 are available only with an SB. HSC 6 is available only with a 4-input SB.
An SB with only 2 digital inputs provides only the 4.0 and 4.1 inputs.
The following table shows the HSC input assignments for both the on-board I/O of the CPU
1212C and an SB. (If the SB has only 2 inputs, only 4.0 and 4.1 inputs are available.)
For single-phase: C is the Clock input, [d] is the optional direction input, and [R] is an
optional external reset input. (Reset is available only for "Counting" mode.)
For two-phase: CU is the Clock Up input, CD is the Clock Down input, and [R] is an
optional external reset input. (Reset is available only for "Counting" mode.)
For AB-phase quadrature: A is the Clock A input, B is the Clock B input, and [R] is an
optional external reset input. (Reset is available only for "Counting" mode.)
Table 9- 7
HSC
HSC 1
HSC 3
HSC 5
[d]
[R]
[d]
[R]
CU
CD
[R]
CU
CD
[R]
[R]
[R]
1-phase
[R]
[d]
[R]
[d]
2-phase
[R]
CU
CD
[R]
CU
CD
AB-phase
[R]
[R]
1-phase
[d]
[R]
2-phase
CU
CD
[R]
[R]
1-phase
[R]
[d]
2-phase
[R]
CU
CD
AB-phase
[R]
1-phase
[d]
2-phase
CU
CD
[R]
[R]
AB-phase
HSC 6 2
2-phase
AB-phase
HSC 4
1-phase
AB-phase
HSC 2 1
SB input (4.x) 3
[R]
1-phase
[R]
[d]
2-phase
[R]
CU
CD
AB-phase
[R]
HSC 1 and HSC 2 can be configured for either the on-board inputs or for an SB.
HSC 5 and HSC 6 are available only with an SB. HSC 6 is available only with a 4-input SB.
An SB with only 2 digital inputs provides only the 4.0 and 4.1 inputs.
342
Technology instructions
9.1 High-speed counter
The following two tables show the HSC input assignments for the on-board I/O of the CPU
1214C and for an optional SB, if installed.
For single-phase: C is the Clock input, [d] is the optional direction input, and [R] is an
optional external reset input. (Reset is available only for "Counting" mode.)
For two-phase: CU is the Clock Up input, CD is the Clock Down input, and [R] is an
optional external reset input. (Reset is available only for "Counting" mode.)
For AB-phase quadrature: A is the Clock A input, B is the Clock B input, and [R] is an
optional external reset input. (Reset is available only for "Counting" mode.)
Table 9- 8
HSC input assignments for CPU 1214C and CPU 1215C (on-board inputs only)
HSC
HSC
1-phase
[d]
[R]
2-phase
CU
CD
[R]
[R]
1-phase
[d]
[R]
2-phase
CU
CD
[R]
1-phase
[R]
C
[d]
[R]
2-phase
CU
CD
[R]
[R]
AB-phase
HSC
21
HSC 3
1-phase
[R]
[d]
2-phase
[R]
CU
CD
AB-phase
[R]
HSC 51
1-phase
[d]
[R]
2-phase
CU
CD
[R]
[R]
AB-phase
HSC 4
1-phase
[R]
[d]
2-phase
[R]
CU
CD
AB-phase
[R]
AB-phase
HSC 61
AB-phase
1
HSC 1, HSC 2, HSC 5 and HSC 6 can be configured for either the on-board inputs or for an SB.
Table 9- 9
HSC 1
HSC 1
1-phase
[d]
[R]
2-phase
CU
CD
[R]
[R]
AB-phase
HSC 2
1-phase
[R]
[d]
2-phase
[R]
CU
CD
AB-phase
[R]
343
Technology instructions
9.1 High-speed counter
HSC 1
HSC 5
1-phase
[d]
[R]
2-phase
CU
CD
[R]
AB-phase
HSC 6
[R]
1-phase
[R]
[d]
2-phase
[R]
CU
CD
AB-phase
[R]
For CPU 1214C: HSC 1, HSC 2, HSC 5 and HSC 6 can be configured for either the on-board
inputs or for an SB.
An SB with only 2 digital inputs provides only the 4.0 and 4.1 inputs.
HSC
Data type
Default address
HSC1
DInt
ID1000
HSC2
DInt
ID1004
HSC3
DInt
ID1008
HSC4
DInt
ID1012
HSC5
DInt
ID1016
HSC6
DInt
ID1020
344
Technology instructions
9.1 High-speed counter
9.1.2
Note
When you enable the high speed counter and select input points for it, the input filter settings
for these points are configured to 800 ns. Each input point has a single filter configuration
that applies to all uses: process inputs, interrupts, pulse catch, and HSC inputs.
WARNING
If the filter time for a digital input channel is changed from a previous setting, a new "0"
level input value may need to be presented for up to 20.0 ms accumulated duration before
the filter becomes fully responsive to new inputs. During this time, short "0" pulse events of
duration less than 20.0 ms may not be detected or counted.
This changing of filter times can result in unexpected machine or process operation, which
may cause death or serious injury to personnel, and/or damage to equipment.
To ensure that a new filter time goes immediately into effect, a power cycle of the CPU
must be applied.
345
Technology instructions
9.2 PID control
After enabling the HSC, configure the other parameters, such as counter function, initial
values, reset options and interrupt events.
For information about configuring the HSC, refer to the section on configuring the CPU
(Page 123).
9.2
PID control
STEP 7 provides the following PID instructions for the S7-1200 CPU:
The PID_Compact instruction is used to control technical processes with continuous
input- and output variables.
The PID_3Step instruction is used to control motor-actuated devices, such as valves that
require discrete signals for open- and close actuation.
Note
Changes that you make to the PID configuration and download in RUN mode do not take
effect until the CPU transitions from STOP to RUN mode.
Both PID instructions (PID_3Step and PID_Compact) can calculate the P-, I-, and Dcomponents during startup (if configured for "pretuning"). You can also configure the
instruction for "fine tuning" to allow you to optimize the parameters. You do not need to
manually determine the parameters.
Note
Execute the PID instruction at constant intervals of the sampling time (preferably in a cyclic
OB).
Because the PID loop needs a certain time to respond to changes of the control value, do
not calculate the output value in every cycle. Do not execute the PID instruction in the main
program cycle OB (such as OB 1).
The sampling time of the PID algorithm represents the time between two calculations of the
output value (control value). The output value is calculated during self-tuning and rounded to
a multiple of the cycle time. All other functions of PID instruction are executed at every call.
346
Technology instructions
9.2 PID control
PID algorithm
The PID (Proportional/Integral/Derivative) controller measures the time interval between two
calls and then evaluates the results for monitoring the sampling time. A mean value of the
sampling time is generated at each mode changeover and during initial startup. This value is
used as reference for the monitoring function and is used for calculation. Monitoring includes
the current measuring time between two calls and the mean value of the defined controller
sampling time.
The output value for the PID controller consists of three components:
P (proportional): When calculated with the "P" component, the output value is proportional
to the difference between the setpoint and the process value (input value).
I (integral): When calculated with the "I" component, the output value increases in
proportion to the duration of the difference between the setpoint and the process value
(input value) to finally correct the difference.
D (derivative): When calculated with the "D" component, the output value increases as a
function of the increasing rate of change of the difference between the setpoint and the
process value (input value). The output value is corrected to the setpoint as quickly as
possible.
The PID controller uses the following formula to calculate the output value for the
PID_Compact instruction.
y = Kp
[ (b w - x) + T s
(w - x) +
TD s
a TD s + 1
(c w - x)
Output value
Process value
Setpoint value
Laplace operator
Kp
Proportional gain
(P component)
T1
TD
The PID controller uses the following formula to calculate the output value for the PID_3Step
instruction.
y = K p s (b w - x) +
1
TI s
(w - x) +
TD s
a TD s + 1
(c w - x)
Output value
Process value
Setpoint value
Laplace operator
Kp
Proportional gain
(P component)
T1
TD
347
Technology instructions
9.2 PID control
9.2.1
Table 9- 11
348
Technology instructions
9.2 PID control
Table 9- 12
349
Technology instructions
9.2 PID control
9.2.2
PID_Compact instruction
The PID controller uses the following formula to calculate the output value for the
PID_Compact instruction.
y = Kp
Table 9- 13
LAD / FBD
[ (b w - x) + T s
I
(w - x) +
TD s
a TD s + 1
(c w - x)
Output value
Process value
Setpoint value
Laplace operator
Kp
Proportional gain
(P component)
T1
TD
PID_Compact instruction
SCL
Description
"PID_Compact_1"(
Setpoint:=_real_in_,
Input:=_real_in_,
Input_PER:=_word_in_,
ManualEnable:=_bool_in_,
ManualValue:=_real_in_,
Reset:=_bool_in_,
ScaledInput=>_real_out_,
Output=>_real_out_,
Output_PER=>_word_out_,
Output_PWM=>_bool_out_,
SetpointLimit_H=>_bool_out_,
SetpointLimit_L=>_bool_out_,
InputWarning_H=>_bool_out_,
InputWarning_L=>_bool_out_,
State=>_int_out_,
Error=>_dword_out_);
STEP 7 automatically creates the technological object and instance DB when you insert the instruction. The instance
DB contains the parameters of the technological object.
350
Technology instructions
9.2 PID control
Table 9- 14
Data type
Description
Setpoint
IN
Real
Input
IN
Real
Input_PER
IN
Word
ManualEnable
IN
Bool
ManualValue
IN
Real
Reset
IN
Bool
ScaledInput
OUT
Real
Output1
OUT
Real
Output_PER1
OUT
Word
Output_PWM1
OUT
Bool
SetpointLimit_H
OUT
Bool
SetpointLimit_L
OUT
Bool
InputWarning_H
OUT
Bool
InputWarning_L
OUT
Bool
State
OUT
Int
ErrorBits
1
OUT
DWord
State = 0: Inactive
State = 1: Pretuning
The outputs of the Output, Output_PER, and Output_PWM parameters can be used in parallel.
351
Technology instructions
9.2 PID control
Response to Reset
The response to Reset = TRUE depends on the version of the PID_Compact instruction.
Reset response PID_Compact V1.1
A rising edge at Reset resets the errors and warnings and clears the integral action. A falling
edge at Reset triggers a change to the most recently active operating mode.
5HVHW
WPV
LB0RGH
WPV
6WDWH
WPV
Activation
Error
Reset
352
Technology instructions
9.2 PID control
5HVHW
WPV
LB0RGH
WPV
6WDWH
WPV
Activation
Error
Reset
&53B,1
39B$/50
6FDOH
,QSXW:DUQLQJB/
,QSXW
6HWSRLQW
,QSXW:DUQLQJB+
3,'7
$QWL:LQGXS
/LPLW
2XWSXW
0DQXDO(QDEOH
,19
EB,QY&WUO
/LPLW
0DQXDO9DOXH
&53B287
3:0
Figure 9-1
2XWSXWB3(5
2XWSXWB3:0
353
Technology instructions
9.2 PID control
6HWSRLQWZ
$QWL:LQGXS
/,0,7
.3
F
6FDOHG,QSXW[
Figure 9-2
9.2.3
'7
ErrorBit (DW#16#...)
Description
0000
No error
0001
0002
0004
Error during fine tuning Oscillation of the process value could not be
maintained.
0008
Error while starting pre-tuning. The process value is too close to the
setpoint. Start fine tuning.
0010
0020
Pre-tuning may not be carried out in automatic mode or during fine tuning.
0040
Error in fine tuning The setpoint is too close to the setpoint limits.
354
Technology instructions
9.2 PID control
ErrorBit (DW#16#...)
Description
0080
9.2.4
0100
0200
0400
0800
Sampling time error: PID_Compact is not called within the sampling time of
the cyclic interrupt OB.
1000
PID_3STEP instruction
The PID controller uses the following formula to calculate the output value for the PID_3Step
instruction.
y = K p s (b w - x) +
1
TI s
(w - x) +
TD s
a TD s + 1
(c w - x)
Output value
Process value
Setpoint value
Laplace operator
Kp
Proportional gain
(P component)
T1
TD
355
Technology instructions
9.2 PID control
Table 9- 16
PID_3Step instruction
LAD / FBD
SCL
"PID_3Step_1"(
SetpoInt:=_real_in_,
Input:=_real_in_,
ManualValue:=_real_in_,
Feedback:=_real_in_,
InputPer:=_word_in_,
FeedbackPer:=_word_in_,
ManualEnable:=_bool_in_,
ManualUP:=_bool_in_,
ManualDN:=_bool_in_,
ActuatorH:=_bool_in_,
ActuatorL:=_bool_in_,
Reset:=_bool_in_,
ScaledInput=>_real_out_,
ScaledFeedback=>_real_out_,
ErrorBits=>_dword_out_,
OutputPer=>_word_out_,
State=>_int_out_,
OutputUP=>_bool_out_,
OutputDN=>_bool_out_,
SetpoIntLimitH=>_bool_out_,
SetpoIntLimitL=>_bool_out_,
InputWarningH=>_bool_out_,
InputWarningL=>_bool_out_,
Error=>_bool_out_);
Description
PID_3Step configures a PID controller with
self-tuning capabilities that has been
optimized for motor-controlled valves and
actuators. It provides two Boolean outputs.
PID_3Step is a PIDT1controller with antiwindup and weighting of the P- and Dcomponents.
STEP 7 automatically creates the technological object and instance DB when you insert the instruction. The instance
DB contains the parameters of the technological object.
Table 9- 17
Description
Setpoint
Real
Input
IN
Real
Input_PER
IN
Word
ManualEnable
IN
Bool
On the edge of the change from FALSE to TRUE, the PID controller
switches to manual mode, State = 4, and Retain.Mode remains
unchanged.
On the edge of the change from TRUE to FALSE, the PID controller
switches to the last active operating mode and
State = Retain.Mode.
356
Technology instructions
9.2 PID control
ManualDN
ManualValue
IN
IN
IN
Data type
Description
Bool
In manual mode, every rising edge opens the valve by 5% of the total
actuating range, or for the duration of the minimum motor actuation
time. ManualUP is evaluated only if you are not using Output_PER and
there is no position feedback. Default value: FALSE
Bool
Real
In manual mode, every rising edge closes the valve by 5% of the total
actuating range, or for the duration of the minimum motor actuation
time. ManualDN is evaluated only if you are not using Output_PER and
there is no position feedback. Default value: FALSE
Feedback
IN
Real
Feedback_PER
IN
Word
Config.FeedbackScaling.LowerPointIn
Config.FeedbackScaling.UpperPointIn
Config.FeedbackScaling.LowerPointOut
Config.FeedbackScaling.UpperPointOut
Actuator_H
IN
Bool
Actuator_L
IN
Bool
Reset
IN
Bool
Input value = 0
ScaledInput
OUT
Real
ScaledFeedback
OUT
Real
Output_PER
OUT
Word
357
Technology instructions
9.2 PID control
Data type
Description
Output_UP
OUT
Bool
Digital output value for opening the valve. Default value: FALSE
Output_DN
OUT
Bool
Digital output value for closing the valve. Default value: FALSE
OUT
Bool
SetpointLimitL
OUT
Bool
InputWarningH
OUT
Bool
InputWarningL
OUT
Bool
State
OUT
Int
State = 0: Inactive
State = 1: Pretuning
Error
OUT
Bool
ErrorBits
OUT
DWord
358
Technology instructions
9.2 PID control
6HWSRLQWZ
'7
'
'HDGB%
7L
6FDOHG,QSXW[
)DF7W
Figure 9-3
$QWLZLQGXS
359
Technology instructions
9.2 PID control
,QSXW:DUQLQJB+
39B$/50
,QSXW:DUQLQJB/
,QSXW3HU2Q
,QSXWB3(5
&53B,1
,QSXW
6HWSRLQW
$QWL:LQGXS
6FDOH
)DF
,QW
3,'7
$QWL:LQGXS
/LPLW
2XWSXW3HU2Q
5RFB/LP
/LPLW
0DQXDO(QDEOH
)$&
&53B287
0DQXDO9DOXH
2XWSXWB3(5
0DQXDO(QDEOH
0DQXDOB83
$GHDGB%
7KU6WS
0DQXDOB'1
3XOVH2XW
2XWSXWB83
2XWSXWB'1
Figure 9-4
360
Technology instructions
9.2 PID control
,QSXW:DUQLQJB+
39B$/50
,QSXW:DUQLQJB/
,QSXW3HU2Q
,QSXWB3(5
$QWL:LQGXS
6FDOH
&53B,1
/LPLW
,QW
)DF
3,'7
$QWL:LQGXS
,QSXW
/LPLW
6HWSRLQW
)HHGEDFN3HU2Q
)HHGEDFNB3(5
6FDOH
&53B,1
)HHGEDFN
0DQXDO(QDEOH
2XWSXW3HU2Q
&53B287
0DQXDO9DOXH
2XWSXWB3(5
0DQXDO(QDEOH
0DQXDOB83
$GHDGB%
2XWSXWB83
7KU6WS
0DQXDOB'1
3XOVH2XW
2XWSXWB'1
Figure 9-5
361
Technology instructions
9.2 PID control
9.2.5
ErrorBit (DW#16#...)
Description
0000
No error
0001
0002
0004
Error during fine tuning Oscillation of the process value could not be
maintained.
0008
Error while starting pre-tuning. The process value is too close to the
setpoint. Start fine tuning.
0010
0020
Pre-tuning may not be carried out in automatic mode or during fine tuning.
0040
Error in fine tuning The setpoint is too close to the setpoint limits.
0080
0100
0200
0400
0800
Sampling time error: PID_3STEP is not called within the sampling time of
the cyclic interrupt OB.
If automatic mode was active before the error occurred,
ActivateRecoverMode = TRUE and the error is no longer pending,
PID_3STEP switches back to automatic mode.
362
Technology instructions
9.2 PID control
ErrorBit (DW#16#...)
Description
1000
2000
4000
8000
9.2.6
Figure 9-6
363
Technology instructions
9.2 PID control
Table 9- 19
Settings
Basic
Process
value
Description
Controller type
If not selected, the PID loop is in direct-acting mode and the output of PID loop
increases if input value < setpoint.
If selected, the output of the PID loop increases if the input value > setpoint.
Restarts the PID loop after it is reset or if an input limit has been exceeded and
returned to the valid range.
Input
Selects either the Input parameter or the Input_PER parameter (for analog) for the
process value. Input_PER can come directly from an analog input module.
Output
Selects either the Output parameter or the Output_PER parameter (for analog) for
the output value. Output_PER can go directly to an analog output module.
Scales both the range and the limits for the process value. If the process value goes below the low limit or
above the high limit, the PID loop goes to inactive mode and sets the output value to 0.
To use Input_PER, you must scale the analog process value (input value).
Figure 9-7
Table 9- 20
Settings
Basic
Description
Controller type
If not selected, the PID loop is in direct-acting mode, and the output of PID loop
increases if the input value < setpoint).
If selected, the output of the PID loop increases if the input value > setpoint.
Restarts the PID loop after it is reset or if an input limit has been exceeded and
returned to the valid range.
Input
Selects either the Input parameter or the Input_PER parameter (for analog) for the
process value. Input_PER can come directly from an analog input module.
364
Technology instructions
9.2 PID control
Settings
Process
value
Description
Output
Selects either to use the digital outputs (Output_UP and Output_DN) or to use the
analog output (Output_PER) for the output value.
Feedback
No feedback (default)
Feedback
Feedback_PER
Scales both the range and the limits for the process value. If the process value goes below the low limit or
above the high limit, the PID loop goes to inactive mode and sets the output value to 0.
To use Input_PER, you must scale the analog process value (input value).
Actuator
Motor transition
time
Sets the time from open to close for the valve. (Locate this value on the data sheet or
the faceplate of the valve.)
Minimum ON time
Sets the minimum movement time for the valve. (Locate this value on the data sheet or
the faceplate of the valve.)
Minimum OFF
time
Sets the minimum pause time for the valve. (Locate this value on the data sheet or the
faceplate of the valve.)
Error behavior
Defines the behavior of the valve when an error is detected or when the PID loop is
reset. If you select to use a substitute position, enter the "Safety position". For analog
feedback or analog output, select a value between the upper or lower limit for the
output. For digital outputs, you can choose only 0% (off) or 100% (on).
Scale Position
Feedback1
"High stop" and "Lower limit stop" define the maximum positive position (full-open)
and the maximum negative position (full-closed). "High stop" must be greater than
"Lower limit stop".
"High limit process value" and "Low limit process value" define the upper and lower
positions of the valve during tuning and automatic mode.
"FeedbackPER" ("Low" and "High") defines the analog feedback of the valve
position. "FeedbackPER High" must be greater than "FeedbackPER Low".
"Scale Position Feedback" is editable only if you enabled "Feedback" in the "Basic" settings.
9.2.7
365
Technology instructions
9.3 Motion control
Table 9- 21
9.3
Motion control
The CPU provides motion control functionality for the operation of stepper motors and servo
motors with pulse interface. The motion control functionality takes over the control and
monitoring of the drives.
The "Axis" technology object configures the mechanical drive data, drive interface,
dynamic parameters, and other drive properties.
You configure the pulse and direction outputs of the CPU for controlling the drive.
Your user program uses the motion control instructions to control the axis and to initiate
motion tasks.
Use the PROFINET interface to establish the online connection between the CPU and
the programming device. In addition to the online functions of the CPU, additional
commissioning and diagnostic functions are available for motion control.
Note
Changes that you make to the motion control configuration and download in RUN mode
do not take effect until the CPU transitions from STOP to RUN mode.
366
Technology instructions
9.3 Motion control
,
,
,
,
,
,
,
,
,
,
,
,
,
,
6,0$7,&6
5816723
(5525
0$,17
',
&38&
'&'&'&
'
;31/$1
PROFINET
A signal board (SB) expands the onboard I/O to include a few additional I/O points. An SB
with 2 digital outputs can be used as pulse and direction outputs to control one motor. An SB
with 4 digital outputs can be used as pulse and direction outputs to control two motors. Builtin relay outputs cannot be used as pulse outputs to control motors.
Note
Pulse-train outputs cannot be used by other instructions in the user program
When you configure the outputs of the CPU or signal board as pulse generators (for use with
the PWM or motion control instructions), the corresponding output addresses (Q0.0 to Q0.3,
Q4.0 to Q4.3) are removed from the Q memory and cannot be used for other purposes in
your user program. If your user program writes a value to an output used as a pulse
generator, the CPU does not write that value to the physical output.
Table 9- 22
Type of CPU
CPU 1211C
CPU 1212C
CPU 1214C
CPU 1215C
No SB installed
With an SB
(2 x DC outputs)
With an SB
(4 x DC outputs)
DC/DC/DC
AC/DC/RLY
DC/DC/RLY
DC/DC/DC
AC/DC/RLY
DC/DC/RLY
DC/DC/DC
AC/DC/RLY
DC/DC/RLY
DC/DC/DC
AC/DC/RLY
DC/DC/RLY
367
Technology instructions
9.3 Motion control
Table 9- 23
Pulse output
Frequency
Onboard
Standard SB
2 Hz f 20 KHz
NOTICE
The maximum pulse frequency of the pulse output generators is 100 KHz for the digital
outputs of the CPU, 20 KHz for the digital outputs of the standard SB, and 200 KHz for the
digital outputs of the high-speed SBs (or 100 KHz for MC V1 instructions).
368
Technology instructions
9.3 Motion control
In the Project tree, expand the node "Technological Objects" and select "Add new
object".
Select the "Axis" icon (rename if required) and click "OK" to open the configuration
editor for the axis object.
Display the "Select PTO for Axis Control" properties under the "Basic parameters" and
select the desired pulse. Note the two Q outputs assigned for pulse and direction.
Note
If the PTO has not been previously configured in the CPU Properties, the PTO is
configured to use one of the onboard outputs.
If you use an output signal board, then select the "Device configuration" button to go
to the CPU Properties. Under "Parameter assignment", in the "Pulse options",
configure the output source to a signal board output. "Pulse_1" and "Pulse_3"are the
only pulse outputs available on the signal board.
Configure the remaining Basic and Extended parameters.
2. Program your application: Insert the MC_Power instruction in a code block.
For the Axis input, select the axis technology object that you created and configured.
Setting the Enable input to TRUE allows the other motion instructions to function.
Setting the Enable input FALSE cancels the other motion instructions.
Note
Include only one MC_Power instruction per axis.
3. Insert the other motion instructions to produce the required motion.
Note
Configuring a pulse generator to signal board outputs: Select the "Pulse generators
(PTO/PWM)" properties for a CPU (in Device configuration) and enable a pulse generator.
Two pulse generators are available for each S7-1200 CPU V1.0, V2.0, V2.1, and V2.2.
S7-1200 CPU V3.0 CPUs have four pulse generators available. In this same configuration
area under "Pulse options", select Pulse generator used as: "PTO".
Note
The CPU calculates motion tasks in "slices" or segments of 10 ms. As one slice is being
executed, the next slice is waiting in the queue to be executed. If you interrupt the motion
task on an axis (by executing another new motion task for that axis), the new motion task
may not be executed for a maximum of 20 ms (the remainder of the current slice plus the
queued slice).
369
Technology instructions
9.3 Motion control
9.3.1
Drive
Technological object
Commissioning
Diagnostics
Configuration
Note
The PTO requires the internal functionality of a high-speed counter (HSC). This means the
corresponding high-speed counter cannot be used elsewhere.
The assignment between PTO and HSC is fixed. When PTO1 is activated, it will be
connected to HSC1. If PTO2 is activated, it will be connected to HSC2. This is only true for
S7-1200 V1.0, V2.0, V2.1, and V2.2 CPUs. S7-1200 V3.0 CPUs do not have this restriction.
You cannot monitor the current value (for example, in ID 1000) when pulses are occurring.
Table 9- 24
Tool
Description
Configuration
Properties of the mechanics and the transmission ratio of the drive (or machine or system)
Tests the function of your axis without having to create a user program. When the tool is started,
the control panel will be displayed. The following commands are available on the control panel:
Home axis
Acknowledge errors
The velocity and the acceleration / deceleration can be specified for the motion commands. The
control panel also shows the current axis status.
Diagnostics
Monitors of the current status and error information for the axis and drive.
370
Technology instructions
9.3 Motion control
NOTICE
You may have to adapt the values of the input parameters of motion control instructions to
the new dimension unit in the user program.
371
Technology instructions
9.3 Motion control
Use the "Commissioning" control panel to test the functionality independently from your user
program.
Click the "Startup" icon to commission the axis.
The control panel shows the current status of the axis. Not only can you enable and disable
the axis, but you can also test the positioning of the axis (both in absolute and relative terms)
and can specify the velocity, acceleration and deceleration. You can also test the homing
and jogging tasks. The control panel also allows you to acknowledge errors.
9.3.2
372
Technology instructions
9.3 Motion control
2. Select the "CommandTable" icon (rename if required), and click "OK" to open the
configuration editor for the CommandTable object.
Command type
Description
Empty
The empty serves as a placeholder for any commands to be added. The empty entry is
ignored when the command table is processed
Halt
Pause axis.
Note: The command only takes place after a "Velocity setpoint" command.
Positioning Relative
Positions the axis based upon distance. The command moves the axis by the given
distance and velocity.
Positioning Absolute
Positions the axis based upon location. The command moves the axis to the given
location, using the velocity specified.
Velocity setpoint
Wait
Waits until the given period is over. "Wait" does not stop an active traversing motion.
Separator
Adds a "Separator" line above the selected line. The separator line allows more than one
profile to be defined in a single command table.
In the figure below, "Command complete" is used as the transition to the next step. This type
of transition allows your device to decelerate to the start/stop speed and then accelerate
once again at the start of the next step.
373
Technology instructions
9.3 Motion control
Axis continues to move and accelerates or decelerates to the next step velocity, saving time and
mechanical wear.
374
Technology instructions
9.3 Motion control
The operation of your CommandTable is controlled by an MC_CommandTable instruction,
as shown below:
9.3.3
9.3.3.1
MC_Power instruction
NOTICE
If the axis is switched off due to an error, it will be enabled again automatically after the
error has been eliminated and acknowledged. This requires that the Enable input
parameter has retained the value TRUE during this process.
375
Technology instructions
9.3 Motion control
Table 9- 26
MC_Power instruction
LAD / FBD
SCL
"MC_Power_DB"(
Axis:=_multi_fb_in_,
Enable:=_bool_in_,
StopMode:=_int_in_,
Status=>_bool_out_,
Busy=>_bool_out_,
Error=>_bool_out_,
ErrorID=>_word_out_,
ErrorInfo=>_word_out_);
Description
The MC_Power motion control instruction enables
or disables an axis. Before you can enable or
disable the axis, ensure the following conditions:
Table 9- 27
Data type
Description
Axis
IN
TO_Axis_1
Enable
IN
Bool
StopMode
Status
IN
OUT
Int
Bool
The axis does not execute motion control tasks and does not
accept any new tasks (exception: MC_Reset task).
Upon disabling, the status does not change to FALSE until the
axis reaches a standstill.
Upon axis enabling, the status does not change to TRUE until
the signal "Drive ready" is pending. If the "Drive ready" drive
interface was not configured in the axis configuration, the status
changes to TRUE immediately.
376
Technology instructions
9.3 Motion control
Data type
Description
Busy
OUT
Bool
Error
OUT
Bool
OUT
Word
ErrorInfo
OUT
Word
0&B3RZHU
$[LVB
(QDB
$[LV
(QDEOH
6WRS0RGH
6WDWXV
%XV\
(UURU
(UURU,'
(UURU,QIR
6WDWXVB
%XV\B
(UURUB
$[LV
([HFXWH
(QDB
6WDWXVB
%XV\B
(UURUB
W
W
0&B5HVHW
0&B5HVHW
$[LVB
([HB
'RQH
%XV\
(UURU
(UURU,'
(UURU,QIR
'RQHB
%XV\B
([HB
'RQHB
%XV\B
'ULYH,QWHUIDFH
'ULYH(QDEOHG
'ULYH5HDG\
An axis is enabled and then disabled again. After the drive has signaled "Drive ready" back to the CPU, the
successful enable can be read out via "Status_1".
Following an axis enable, an error has occurred that caused the axis to be disabled. The error is eliminated and
acknowledged with "MC_Reset". The axis is then enabled again.
377
Technology instructions
9.3 Motion control
To disable an axis, follow these steps:
1. Bring the axis to a standstill.
You can identify when the axis is at a standstill in technology object tag <Axis
name>.StatusBits.StandStill.
2. Set input parameter "Enable" to FALSE after standstill is reached.
3. If output parameters "Busy" and "Status" and technology object tag <Axis
name>.StatusBits.Enable indicate the value FALSE, disabling of the axis is complete.
9.3.3.2
Table 9- 28
MC_Reset instruction
MC_Reset instruction
LAD / FBD
SCL
Description
"MC_Reset_DB"(
Axis:=_multi_fb_in_,
Execute:=_bool_in_,
Restart:=_bool_in_,
Done=>_bool_out_,
Busy=>_bool_out_,
Error=>_bool_out_,
ErrorID=>_word_out_,
ErrorInfo=>_word_out_);
The MC_Reset task cannot be aborted by any other motion control task. The new MC_Reset
task does not abort any other active motion control tasks.
Table 9- 29
Data type
Description
Axis
TO_Axis_1
IN
Execute
IN
Bool
Restart
IN
Bool
TRUE = Download the axis configuration from the load memory to the
work memory. The command can only be executed when the axis is
disabled.
FALSE = Acknowledges pending errors
Done
OUT
Bool
Busy
OUT
Bool
378
Technology instructions
9.3 Motion control
Data type
Description
Error
OUT
Bool
ErrorID
OUTP
Word
ErrorInfo
OUT
Word
9.3.3.3
Table 9- 30
MC_Home instruction
MC_Home instruction
LAD / FBD
SCL
Description
"MC_Home_DB"(
Axis:=_multi_fb_in_,
Execute:=_bool_in_,
Position:=_real_in_,
Mode:=_int_in_,
Done=>_bool_out_,
Busy=>_bool_out_,
CommandAborted=>_bool_out_,
Error=>_bool_out_,
ErrorID=>_word_out_,
ErrorInfo=>_word_out_);
379
Technology instructions
9.3 Motion control
Table 9- 31
Data type
Description
Axis
IN
TO_Axis_PTO
Execute
IN
Bool
Position
IN
Real
IN
Int
Homing mode
2: Passive homing
Homing according to the axis configuration. Following
homing, the value of parameter "Position" is set as the
new axis position.
3: Active homing
Reference point approach in accordance with the axis
configuration. Following homing, the value of parameter
"Position" is set as the new axis position.
Done
OUT
Bool
Busy
OUT
Bool
CommandAborted
OUT
Bool
Error
OUT
Bool
ErrorID
OUT
Word
ErrorInfo
OUT
Word
Note
Axis homing is lost under the following conditions
Disabling of axis by the MC_Power instruction
Switchover between automatic control and manual control
Upon start of active homing (After successful completion of the homing operation, axis
homing is available again.)
After power-cycling the CPU
After CPU restart (RUN-to-STOP or STOP-to-RUN)
380
Technology instructions
9.3 Motion control
To home the axis, follow these steps:
1. Check the requirements indicated above.
2. Initialize the necessary input parameters with values, and start the homing operation with
a rising edge at input parameter "Execute".
3. If output parameter "Done" and technology object tag <Axis
name>.StatusBits.HomingDone indicate the value TRUE, homing is complete.
Table 9- 32
Override response
Mode
Description
0 or 1
The MC_Home task cannot be aborted by any other motion control task. The new MC_Home task does not
abort any active motion control tasks. Position-related motion tasks are resumed after homing according to
the new homing position (value at the Position input parameter).
The MC_Home task can be aborted by the following motion control tasks:
MC_Home task Mode = 2, 3: The new MC_Home task aborts the following active motion control task.
MC_Home task Mode = 2: Position-related motion tasks are resumed after homing according to the new
homing position (value at the Position input parameter).
9.3.3.4
Table 9- 33
MC_Home Mode = 3
MC_Home Mode = 2, 3
MC_Halt
MC_Halt
MC_MoveAbsolute
MC_MoveAbsolute
MC_MoveRelative
MC_MoveRelative
MC_MoveVelocity
MC_MoveVelocity
MC_MoveJog
MC_MoveJog
MC_Halt instruction
MC_Halt instruction
LAD / FBD
SCL
"MC_Halt_DB"(
Axis:=_multi_fb_in_,
Execute:=_bool_in_,
Done=>_bool_out_,
Busy=>_bool_out_,
CommandAborted=>_bool_out_,
Error=>_bool_out_,
ErrorID=>_word_out_,
ErrorInfo=>_word_out_);
Description
Use the MC_Halt instruction to stop all
motion and to brings the axis to a standstill. The stand-still position is not defined.
In order to use the MC_Halt instruction,
the axis must first be enabled.
381
Technology instructions
9.3 Motion control
Table 9- 34
Data type
Description
Axis
IN
TO_Axis_1
Execute
IN
Bool
Done
OUT
Bool
Busy
OUT
Bool
CommandAborted
OUT
Bool
Error
OUT
Bool
ErrorID
OUT
Word
ErrorInfo
OUT
Word
0&B0RYH9HORFLW\
$[LVB
([HB
$[LV
,Q9HORFLW\
([HFXWH
%XV\
9HORFLW\ &RPPDQG$ERUWHG
(UURU
'LUHFWLRQ
(UURU,'
&XUUHQW
(UURU,QIR
9HORFLW\
,Q9HOB
%XV\B
$ERUWB
$[LV
([HFXWH
'RQH
%XV\
&RPPDQG$ERUWHG
(UURU
(UURU,'
(UURU,QIR
([HB
,Q9HOB
%XV\B
$ERUWB
0&B+DOW
0&B+DOW
$[LVB
([HB
'RQHB
%XV\B
$ERUWB
([HB
'RQHB
%XV\B
$ERUWB
9HORFLW\
$[LVB
The following values were configured in the "Dynamics > General" configuration window: Acceleration = 10.0 and
Deceleration = 5.0
The axis is braked by an MC_Halt task until it comes to a standstill. The axis standstill is signaled via "Done_2".
While an MC_Halt task is braking the axis, this task is aborted by another motion task. The abort is signaled via
"Abort_2".
382
Technology instructions
9.3 Motion control
Override response
The MC_Halt task can be aborted by the
following motion control tasks:
9.3.3.5
Table 9- 35
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
MC_MoveAbsolute instruction
MC_MoveAbsolute instruction
LAD / FBD
SCL
"MC_MoveAbsolute_DB"(
Axis:=_multi_fb_in_,
Execute:=_bool_in_,
Position:=_real_in_,
Velocity:=_real_in_,
Done=>_bool_out_,
Busy=>_bool_out_,
CommandAborted=>_bool_out_,
Error=>_bool_out_,
ErrorID=>_word_out_,
ErrorInfo=>_word_out_);
Table 9- 36
Description
Use the MC_MoveAbsolute
instruction to start a positioning
motion of the axis to an absolute
position.
In order to use the
MC_MoveAbsolute instruction, the
axis must first be enabled and also
must be homed.
Description
Axis
TO_Axis_1
Execute
IN
Bool
Position
IN
Real
Velocity
IN
Real
Done
OUT
Bool
Busy
OUT
Bool
383
Technology instructions
9.3 Motion control
Data type
Description
CommandAborted
OUT
Bool
Error
OUT
Bool
ErrorID
OUT
Word
ErrorInfo
OUT
Word
0&B0RYH$EVROXWH
$[LVB
([HB
$[LV
([HFXWH
3RVLWLRQ
9HORFLW\
'RQH
%XV\
&RPPDQG$ERUWHG
(UURU
(UURU,'
(UURU,QIR
'RQHB
%XV\B
$ERUWB
([HB
'RQHB
W
W
%XV\B
$ERUWB
$[LVB
([HB
$[LV
([HFXWH
3RVLWLRQ
9HORFLW\
'RQH
%XV\
&RPPDQG$ERUWHG
(UURU
(UURU,'
(UURU,QIR
0RYH
0&B0RYH$EVROXWH
'RQHB
%XV\B
([HB
'RQHB
%XV\B
9HORFLW\
$[LVB
3RVLWLRQ
$[LVB
The following values were configured in the "Dynamics > General" configuration window: Acceleration = 10.0 and
Deceleration = 10.0
An axis is moved to absolute position 1000.0 with a MC_MoveAbsolute task. When the axis reaches the target
position, this is signaled via "Done_1". When "Done_1" = TRUE, another MC_MoveAbsolute task, with target
position 1500.0, is started. Because of the response times (e.g., cycle time of user program, etc.), the axis comes
to a standstill briefly (see zoomed-in detail). When the axis reaches the new target position, this is signaled via
"Done_2".
An active MC_MoveAbsolute task is aborted by another MC_MoveAbsolute task. The abort is signaled via
"Abort_1". The axis is then moved at the new velocity to the new target position 1500.0. When the new target
position is reached, this is signaled via "Done_2".
384
Technology instructions
9.3 Motion control
Override response
The MC_MoveAbsolute task can be
aborted by the following motion control
tasks:
9.3.3.6
Table 9- 37
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
MC_MoveRelative instruction
MC_MoveRelative instruction
LAD / FBD
SCL
Description
"MC_MoveRelative_DB"(
Axis:=_multi_fb_in_,
Execute:=_bool_in_,
Distance:=_real_in_,
Velocity:=_real_in_,
Done=>_bool_out_,
Busy=>_bool_out_,
CommandAborted=>_bool_out_,
Error=>_bool_out_,
ErrorID=>_word_out_,
ErrorInfo=>_word_out_);
Table 9- 38
Data type
Description
Axis
IN
TO_Axis_1
Execute
IN
Bool
Distance
IN
Real
Velocity
IN
Real
Done
OUT
Bool
Busy
OUT
Bool
385
Technology instructions
9.3 Motion control
Data type
Description
CommandAborted
OUT
Bool
Error
OUT
Bool
ErrorID
OUT
Word
ErrorInfo
OUT
Word
0&B0RYH5HODWLYH
$[LVB
([HB
$[LV
'RQH
([HFXWH
%XV\
'LVWDQFH &RPPDQG$ERUWHG
(UURU
9HORFLW\
(UURU,'
(UURU,QIR
'RQHB
%XV\B
$ERUWB
([HB
%XV\B
'RQHB
$ERUWB
$[LVB
([HB
$[LV
'RQH
([HFXWH
%XV\
'LVWDQFH &RPPDQG$ERUWHG
(UURU
9HORFLW\
(UURU,'
(UURU,QIR
0RYH
0&B0RYH5HODWLYH
'RQHB
%XV\B
([HB
%XV\B
'RQHB
9HORFLW\
$[LVB
3RVLWLRQ
$[LVB
The following values were configured in the "Dynamics > General" configuration window: Acceleration = 10.0 and
Deceleration = 10.0
The axis is moved by an MC_MoveRelative task by the distance ("Distance") 1000.0. When the axis reaches the
target position, this is signaled via "Done_1". When "Done_1" = TRUE, another MC_MoveRelative task, with travel
distance 500.0, is started. Because of the response times (for example, cycle time of user program), the axis
comes to a standstill briefly (see zoomed-in detail). When the axis reaches the new target position, this is signaled
via "Done_2".
An active MC_MoveRelative task is aborted by another MC_MoveRelative task. The abort is signaled via
"Abort_1". The axis is then moved at the new velocity by the new distance ("Distance") 500.0. When the new target
position is reached, this is signaled via "Done_2".
386
Technology instructions
9.3 Motion control
Override response
The MC_MoveRelative task can be aborted
by the following motion control tasks:
9.3.3.7
Table 9- 39
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
MC_MoveVelocity instruction
MC_MoveVelocity instruction
LAD / FBD
SCL
"MC_MoveVelocity_DB"(
Axis:=_multi_fb_in_,
Execute:=_bool_in_,
Velocity:=_real_in_,
Direction:=_int_in_,
Current:=_bool_in_,
InVelocity=>_bool_out_,
Busy=>_bool_out_,
CommandAborted=>_bool_out_,
Error=>_bool_out_,
ErrorID=>_word_out_,
ErrorInfo=>_word_out_);
Table 9- 40
Description
IN
Data type
Description
TO_Axis_1
Execute
IN
Bool
Velocity
IN
Real
387
Technology instructions
9.3 Motion control
Current
IN
IN
Data type
Description
Int
Direction specification:
Bool
InVelocity
OUT
Bool
TRUE:
Busy
OUT
Bool
CommandAborted
OUT
Bool
Error
OUT
Bool
ErrorID
OUT
Word
ErrorInfo
OUT
Word
388
Technology instructions
9.3 Motion control
0RYH
([HB
0&B0RYH9HORFLW\
$[LVB
([HB
$[LV
,Q9HORFLW\
([HFXWH
%XV\
9HORFLW\ &RPPDQG$ERUWHG
(UURU
'LUHFWLRQ
(UURU,'
&XUUHQW
(UURU,QIR
,Q9HOB
%XV\B
$ERUWB
%XV\B
,Q9HOB
W
W
$ERUWB
0&B0RYH9HORFLW\
$[LVB
([HB
$[LV
,Q9HORFLW\
%XV\
([HFXWH
9HORFLW\ &RPPDQG$ERUWHG
(UURU
'LUHFWLRQ
(UURU,'
&XUUHQW
(UURU,QIR
0RYH
([HB
%XV\B
,Q9HOB
%XV\B
W
W
,Q9HOB
9HORFLW\
$[LVB
The following values were configured in the "Dynamics > General" configuration window: Acceleration = 10.0 and
Deceleration = 10.0
An active MC_MoveVelocity task signals via "InVel_1" that its target velocity has been reached. It is then aborted
by another MC_MoveVelocity task. The abort is signaled via "Abort_1". When the new target velocity 15.0 is
reached, this is signaled via "InVel_2". The axis then continues moving at the new constant velocity.
An active MC_MoveVelocity task is aborted by another MC_MoveVelocity task prior to reaching its target velocity.
The abort is signaled via "Abort_1". When the new target velocity 15.0 is reached, this is signaled via "InVel_2".
The axis then continues moving at the new constant velocity.
Override response
The MC_MoveVelocity task can be aborted
by the following motion control tasks:
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
389
Technology instructions
9.3 Motion control
Note
Behavior with zero set velocity (Velocity = 0.0)
An MC_MoveVelocity task with "Velocity" = 0.0 (such as an MC_Halt task) aborts active
motion tasks and stops the axis with the configured deceleration. When the axis comes to a
standstill, output parameter "InVelocity" indicates TRUE for at least one program cycle.
"Busy" indicates the value TRUE during the deceleration operation and changes to FALSE
together with "InVelocity". If parameter "Execute" = TRUE is set, "InVelocity" and "Busy" are
latched.
When the MC_MoveVelocity task is started, status bit "SpeedCommand" is set in the
technology object. Status bit "ConstantVelocity" is set upon axis standstill. Both bits are
adapted to the new situation when a new motion task is started.
9.3.3.8
Table 9- 41
MC_MoveJog instruction
MC_MoveJog instruction
LAD / FBD
SCL
"MC_MoveJog_DB"(
Axis:=_multi_fb_in_,
JogForward:=_bool_in_,
JogBackward:=_bool_in_,
Velocity:=_real_in_,
InVelocity=>_bool_out_,
Busy=>_bool_out_,
CommandAborted=>_bool_out_,
Error=>_bool_out_,
ErrorID=>_word_out_,
ErrorInfo=>_word_out_);
Table 9- 42
Description
Use the MC_MoveJog instruction to move
the axis constantly at the specified
velocity in jog mode. This instruction is
typically used for testing and
commissioning purposes.
In order to use the MC_MoveJog
instruction, the axis must first be enabled.
Data type
Description
Axis
IN
TO_Axis_1
JogForward1
IN
Bool
JogBackward1
IN
Bool
Velocity
IN
Real
390
Technology instructions
9.3 Motion control
Data type
Description
InVelocity
OUT
Bool
Busy
OUT
Bool
CommandAborted
OUT
Bool
Error
OUT
Bool
ErrorID
OUT
Word
ErrorInfo
OUT
Word
If both the JogForward and JogBackward parameters are simultaneously TRUE, the axis stops with the configured
deceleration. An error is indicated in parameters "Error", "ErrorID", and "ErrorInfo".
0RYH-RJ
0&B0RYH-RJ
$[LVB
-RJB)
-RJB%
$[LV
,Q9HORFLW\
-RJ)RUZDUG
%XV\
-RJ%DFNZDUG &RPPDQG$ERUWHG
(UURU
9HORFLW\
(UURU,'
(UURU,QIR
,Q9HOB
%XV\B
-RJB)
-RJB%
,Q9HOB
%XV\B
W
W
9HORFLW\
$[LVB
The following values were configured in the "Dynamics > General" configuration window: Acceleration = 10.0 and
Deceleration = 5.0
The axis is moved in the positive direction in jog mode via "Jog_F". When the target velocity 50.0 is reached, this is
signaled via "InVelo_1". The axis brakes to a standstill again after Jog_F is reset.
The axis is moved in the negative direction in jog mode via "Jog_B". When the target velocity 50.0 is reached, this
is signaled via "InVelo_1". The axis brakes to a standstill again after Jog_B is reset.
Override response
The MC_MoveJog task can be aborted by
the following motion control tasks:
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
391
Technology instructions
9.3 Motion control
9.3.3.9
Table 9- 43
MC_CommandTable instruction
MC_CommandTable instruction
LAD / FBD
SCL
Description
"MC_CommandTable_DB"(
Axis:=_multi_fb_in_,
CommandTable:=_multi_fb_in_,
Execute:=_bool_in_,
StartIndex:=_uint_in_,
EndIndex:=_uint_in_,
Done=>_bool_out_,
Busy=>_bool_out_,
CommandAborted=>_bool_out_,
Error=>_bool_out_,
ErrorID=>_word_out_,
ErrorInfo=>_word_out_,
CurrentIndex=>_uint_out_,
Code=>_word_out_);
Table 9- 44
IN
Data type
Initial value
Description
TO_Axis_1
Table
IN
TO_CommandTable_1
Execute
IN
Booll
FALSE
StartIndex
IN
Int
EndIndex
IN
Int
32
Done
OUT
Bool
FALSE
Busy
OUT
Bool
FALSE
Operation in progress
CommandAborted
OUT
Bool
FALSE
Error
OUT
Bool
FALSE
ErrorID
OUT
Word
16#0000
Error identifier
ErrorInfo
OUT
Word
16#0000
Error information
Step
OUT
Int
Code
OUT
Word
16#0000
You can create the desired movement sequence in the "Command Table" configuration
window and check the result against the graphic view in the trend diagram.
392
Technology instructions
9.3 Motion control
You can select the command types that are to be used for processing the command table.
Up to 32 jobs can be entered. The commands are processed in sequence.
Table 9- 45
Command type
Description
Empty
The empty serves as a placeholder for any commands to be added. The empty entry is
ignored when the command table is processed
Halt
Pause axis.
Note: The command only takes place after a "Velocity setpoint" command.
Positioning Relative
Positions the axis based upon distance. The command moves the axis by the given
distance and velocity.
Positioning Absolute
Positions the axis based upon location. The command moves the axis to the given
location, using the velocity specified.
Velocity setpoint
Wait
Waits until the given period is over. "Wait" does not stop an active traversing motion.
Separator
Adds a "Separator" line above the selected line. The separator line allows more than one
profile to be defined in a single command table.
393
Technology instructions
9.3 Motion control
Override response
The MC_CommandTable task can be
aborted by the following motion control
tasks:
9.3.3.10
Table 9- 46
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
MC_CommandTable
MC_Home Mode = 3
MC_Halt
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_MoveJog
MC_CommandTable
The current motion control job with the
launch of the first "Positioning Relative",
"Positioning Absolute", "Velocity setpoint"
or "Halt" command
MC_ChangeDynamic
MC_ChangeDynamic instruction
LAD / FBD
SCL
"MC_ChangeDynamic_DB"(
Execute:=_bool_in_,
ChangeRampUp:=_bool_in_,
RampUpTime:=_real_in_,
ChangeRampDown:=_bool_in_,
RampDownTime:=_real_in_,
ChangeEmergency:=_bool_in_,
EmergencyRampTime:=_real_in_,
ChangeJerkTime:=_bool_in_,
JerkTime:=_real_in_,
Done=>_bool_out_,
Error=>_bool_out_,
ErrorID=>_word_out_,
ErrorInfo=>_word_out_);
Table 9- 47
Description
Changes the dynamic settings of
a motion control axis:
Description
Axis
TO_Axis_1
Execute
IN
Bool
394
Technology instructions
9.3 Motion control
Data type
Description
ChangeRampUp
IN
Bool
RampUpTime
IN
Real
ChangeRampDown
IN
Bool
RampDownTime
IN
Real
ChangeEmergency
IN
Bool
EmergencyRampTime
IN
Real
ChangeJerkTime
IN
Bool
JerkTime
IN
Real
Smoothing time (in seconds) used for the axis acceleration and
deceleration ramps. Default value: 0.25
The change will influence the tag <Axis name>.
Config.DynamicDefaults.Jerk. The effectiveness of the change is
shown in the description of this tag.
Done
OUT
Bool
Error
OUT
Bool
ErrorID
OUT
Word
ErrorInfo
IN
Word
Override response
An MC_ChangeDynamic command cannot be aborted by any other Motion Control
command.
395
Technology instructions
9.3 Motion control
A new MC_ChangeDynamic command does not abort any active Motion Control jobs.
Note
The input parameters "RampUpTime", "RampDownTime", "EmergencyRampTime" and
"RoundingOffTime" can be specified with values that makes the resultant axis parameters
"acceleration", "delay", "emergency stop-delay" and "jerk" outside the permissible limits.
Make sure you keep the MC_ChangeDynamic parameters within the limits of the dynamic
configuration settings for the axis technological object.
9.3.4
9.3.4.1
Direction
PTO 0
Built-in I/O
Q0.0
Q0.1
SB I/O
Q4.0
Q4.1
PTO 1
Built-in I/O
Q0.2
Q0.3
SB I/O
Q4.2
Q4.3
Built-in I/O
Q0.41
Q0.51
SB I/O
Q4.0
Q4.1
PTO 2
PTO 3
S7-1200 Programmable controller
396
Technology instructions
9.3 Motion control
Q0.62
Q0.72
SB I/O
Q4.2
Q4.3
The CPU 1211C does not have outputs Q0.4, Q0.5, Q0.6, or Q0.7. Therefore, these outputs
cannot be used in the CPU 1211C.
The CPU 1212C does not have outputs Q0.6 or Q0.7. Therefore, these outputs cannot be used in
the CPU 1212C.
This table applies to the CPU 1211C, CPU 1212C, CPU 1214C, and CPU 1215C PTO functions
Drive interface
For motion control, you can optionally configure a drive interface for "Drive enabled" and
"Drive ready". When using the drive interface, the digital output for the drive enable and the
digital input for "drive ready" can be freely selected.
Note
The firmware will take control via the corresponding pulse and direction outputs if the PTO
(Pulse Train Output) has been selected and assigned to an axis.
With this takeover of the control function, the connection between the process image and I/O
output is also disconnected. While the user has the possibility of writing the process image of
pulse and direction outputs via the user program or watch table, this is never transferred to
the I/O output. Accordingly, it is also not possible to monitor the I/O output via the user
program or watch table. The information read merely reflects the value of the process image
and does not match the actual status of the I/O output in any respect.
For all other CPU outputs that are not used permanently by the CPU firmware, the status of
the I/O output can be controlled or monitored via the process image, as usual.
9.3.4.2
%
&
Mechanical stop
Distance
Hardware and software limit switches must be activated prior to use in the configuration or in
the user program. Software limit switches are only active after homing the axis.
397
Technology instructions
9.3 Motion control
RPS
LIM-
LIM+
PTO 0
Built-in I/O
I0.0 - I1.5
SB I/O
I4.0 - I4.3
Built-in I/O
I0.0 - I1.5
SB I/O
I4.0 - I4.3
Built-in I/O
I0.0 - I1.5
SB I/O
I4.0 - I4.3
Built-in I/O
I0.0 - I1.5
SB I/O
I4.0 - I4.3
PTO 1
PTO 2
PTO 3
When the hardware limit switches are approached, the axis brakes to a standstill at the
configured emergency deceleration. The specified emergency deceleration must be
sufficient to reliably stop the axis before the mechanical stop. The following diagram
presents the behavior of the axis after it approaches the hardware limit switches.
398
Technology instructions
9.3 Motion control
$
&
'
'
[Velocity]
Distance
Mechanical stop
WARNING
If the filter time for a digital input channel is changed from a previous setting, a new "0"
level input value may need to be presented for up to 20.0 ms accumulated duration before
the filter becomes fully responsive to new inputs. During this time, short "0" pulse events of
duration less than 20.0 ms may not be detected or counted.
This changing of filter times can result in unexpected machine or process operation, which
may cause death or serious injury to personnel, and/or damage to equipment.
To ensure that a new filter time goes immediately into effect, a power cycle of the CPU
must be applied.
399
Technology instructions
9.3 Motion control
If software limit switches are activated, an active motion is stopped at the position of the
software limit switch. The axis is braked at the configured deceleration. The following
diagram presents the behavior of the axis until it reaches the software limit switches.
$
&
'
[Velocity]
Working range
Distance
Use additional hardware limit switches if a mechanical endstop is located after the software
limit switches and there is a risk of mechanical damage.
Additional information
Your user program can override the hardware or software position limits by enabling or
disabling both hardware and software limits functionality. The selection is made from the
Axis DB.
To enable or disable the hardware limit functionality, access the "Active" tag (Bool) in the
DB path "<axis name>/Config/PositonLimits_HW". The state of the "Active" tag enables
or disables the use of hardware position limits.
To enable or disable software position limit functionality, access "Active" tag (Bool) in the
DB path "<axis name>/Config/Position Limits_SW". The state of this "Active" tag enables
or disables the software position limits.
You can also modify the software position limits with your user program (for example, to add
flexibility for machine setup or to shorten machine change-over time). Your user program can
write new values to the " MinPosition " and " MaxPosition " tags (engineering units in Real
format) in the DB "<axis name>/Config/PositionLimits_SW".
400
Technology instructions
9.3 Motion control
9.3.4.3
Homing
Homing refers to the matching of the axis coordinates to the real, physical drive position. (If
the drive is currently at position x, the axis will be adjusted to be in position x.) For positioncontrolled axes, the entries and displays for the position refer exactly to these axis
coordinates.
Note
The agreement between the axis coordinates and the real situation is extremely important.
This step is necessary to ensure that the absolute target position of the axis is also achieved
exactly with the drive.
The MC_Home instruction initiates the homing of the axis.
There are 4 different homing functions. The first two functions allow the user to set the
current position of the axis and the second two position the axis with respect to a Home
reference Sensor.
Mode 0 - Direct Referencing Absolute: When executed this mode tells the axis exactly
where it is. It sets the internal position variable to the value of the Position input of the
Homing instruction. This is used for machine calibration and setup.
The axis position is set regardless of the reference point switch. Active traversing motions
are not aborted. The value of the Position input parameter of the MC_Home instruction is
set immediately as the reference point of the axis. To assign the reference point to an
exact mechanical position, the axis must be at a standstill at this position at the time of
the homing operation.
Mode 1 - Direct Referencing Relative: When executed this mode uses the internal
position variable and adds the value of the Position input on the Homing instruction to it.
This is typically used to account for machine offset.
The axis position is set regardless of the reference point switch. Active traversing motions
are not aborted. The following statement applies to the axis position after homing: New
axis position = current axis position + value of the Position parameter of the MC_Home
instruction.
401
Technology instructions
9.3 Motion control
Mode 2 - Passive Referencing: When the axis is moving and passes the Reference Point
Switch the current position is set as the home position. This feature will help account for
normal machine wear and gear backlash and prevent the need for manual compensation
for wear. The Position input on the Homing instruction, as before, adds to the location
indicated by the Reference Point Switch allowing easy offset of the Home position.
During passive homing, the MC_Home instruction does not carry out any homing motion.
The traversing motion required for this step must be implemented by the user via other
motion control instructions. When the reference point switch is detected, the axis is
homed according to the configuration. Active traversing motions are not aborted upon
start of passive homing.
Mode 3 - Active Referencing: This mode is the most precise method of Homing the Axis.
The initial direction and velocity of movement is configured in the Technology Object
Configuration Extended Parameters-Homing. This is dependent upon machine
configuration. There is also the ability to determine if the leading edge or falling edge of
the Reference Point Switch signal is the Home position. Virtually all sensors have an
active range and if the Steady State On position was used as the Home signal then there
would be a possibility for error in the Homing position since the On signal active range
would cover a range of distance. By using either the leading or falling edge of that signal
a much more precise Home position results. As with all other modes the value of the
Position input on the Homing instruction is added to the Hardware referenced position.
In active homing mode, the MC_Home instruction performs the required reference point
approach. When the reference point switch is detected, the axis is homed according to
the configuration. Active traversing motions are aborted.
Modes 0 and 1 do not require that the axis be moved at all. They are typically used in setup
and calibration. Modes 2 and 3 require that the axis move and pass a sensor that is
configured in the "Axis" technology object as the Reference Point Switch. The reference
point which can be placed in the work area of the axis or outside of the normal work area but
within movement range.
402
Technology instructions
9.3 Motion control
Table 9- 50
Parameter
Description
Select the digital input for the reference point switch from the drop-down list box. The
input must be interrupt-capable. The onboard CPU inputs and inputs of an inserted
signal board can be selected as inputs for the reference point switch.
The default filter time for the digital inputs is 6.4 ms. When the digital inputs are used
as a reference point switch, this can result in undesired decelerations and thus
inaccuracies. Depending on the reduced velocity and extent of the reference point
switch, the reference point may not be detected. The filter time can be set under
"Input filter" in the device configuration of the digital inputs.
The specified filter time must be less than the duration of the input signal at the
reference point switch.
Auto reverse after reaching the
hardware limit switches
(Active homing only)
Activate the check box to use the hardware limit switch as a reversing cam for the
reference point approach. The hardware limit switches must be configured and
activated for direction reversal.
If the hardware limit switch is reached during active homing, the axis brakes at the
configured deceleration (not with the emergency deceleration) and reverses direction.
The reference point switch is then sensed in reverse direction.
If the direction reversal is not active and the axis reaches the hardware limit switch
during active homing, the reference point approach is aborted with an error and the
axis is braked at the emergency deceleration.
Approach direction
(Active and passive homing)
With the direction selection, you determine the "approach direction" used during
active homing to search for the reference point switch, as well as the homing
direction. The homing direction specifies the travel direction the axis uses to
approach the configured side of the reference point switch to carry out the homing
operation.
Active homing: Select whether the axis is to be referenced on the left or right side
of the reference point switch. Depending on the start position of the axis and the
configuration of the homing parameters, the reference point approach sequence
can differ from the diagram in the configuration window.
Passive homing: With passive homing, the traversing motions for purposes of
homing must be implemented by the user via motion commands. The side of the
reference point switch on which homing occurs depends on the following factors:
Approach velocity
(Active homing only)
Specify the velocity at which the reference point switch is to be searched for during
the reference point approach.
Limit values (independent of the selected user unit):
Start/stop velocity approach velocity maximum velocity
403
Technology instructions
9.3 Motion control
Parameter
Description
Reduced velocity
Specify the velocity at which the axis approaches the reference point switch for
homing.
If the desired reference position deviates from the position of the reference point
switch, the home position offset can be specified in this field.
If the value does not equal 0, the axis executes the following actions following
homing at the reference point switch:
1. Move the axis at reduced velocity by the value of the home position offset.
2. When the position of the home position offset is reached, the axis position is set
to the absolute reference position. The absolute reference position is specified via
parameter "Position" of motion control instruction "MC_Home".
Limit values (independent of the selected user unit):
-1.0e12 home position offset 1.0e12
Table 9- 51
Configuration
Configuration
Approach direction
Positive
Positive
Negative
Negative
Result:
Current travel direction
Homing on
Reference point switch
Positive direction
Left
Negative direction
Right
Positive direction
Right
Negative direction
Left
Positive direction
Right
Negative direction
Left
Positive direction
Left
Negative direction
Right
404
Technology instructions
9.3 Motion control
Table 9- 52
Operation
Notes
Approach velocity
Reduced velocity
&
'
Search phase (blue curve segment): When active homing starts, the axis accelerates to the configured "approach
velocity" and searches at this velocity for the reference point switch.
Reference point approach (red curve section): When the reference point switch is detected, the axis in this example
brakes and reverses, to be homed on the configured side of the reference point switch at the configured "reduced
velocity".
Travel to reference point position (green curve segment): After homing at the reference point switch, the axis travels
to the "Reference point coordinates" at the "reduced velocity". On reaching the "Reference point coordinates", the
axis is stopped at the position value that was specified in the Position input parameter of the MC_Home instruction".
Note
If the homing search does not function as you expected, check the inputs assigned to the
hardware limits or to the reference point. These inputs may have had their edge interrupts
disabled in device configuration.
Examine the configuration data for the axis technology object of concern to see which inputs
(if any) are assigned for "HW Low Limit Switch Input", "HW High Limit Switch Input", and
"Input reference point switch". Then open the Device configuration for the CPU and examine
each of the assigned inputs. Verify the "Enable rising edge detection" and "Enable falling
edge detection" are both selected. If these properties are not selected, delete the specified
inputs in the axis configuration and select them again.
405
Technology instructions
9.3 Motion control
9.3.4.4
Jerk limit
With the jerk limit you can reduce the stresses on your mechanics during an acceleration
and deceleration ramp. The value for the acceleration and deceleration is not changed
abruptly when the step limiter is active; it is adapted in a transition phase. The figure below
shows the velocity and acceleration curve without and with jerk limit.
Table 9- 53
Jerk limit
The jerk limit gives a "smoothed" velocity profile of the axis motion. This ensures soft starting
and braking of a conveyor belt for example.
406
Technology instructions
9.3 Motion control
9.3.5
Commissioning
Status
Description
Enabled
The axis is enabled and ready to be controlled via motion control tasks.
(Tag of technology object: <Axis name>.StatusBits.Enable)
Homed
The axis is homed and is capable of executing absolute positioning tasks of motion control
instruction "MC_MoveAbsolute". The axis does not have to be homed for relative homing. Special
situations:
If a homed axis undergoes passive homing, the status is set to TRUE during passive homing.
(Tag of technology object: <Axis name>.StatusBits.HomingDone)
Error
An error has occurred in the "Axis" technology object. More information about the error is available
in automatic control at the ErrorID and ErrorInfo parameters of the motion control instructions. In
manual mode, the "Last error" field of the control panel displays detailed information about the
cause of error.
The "Manual control" mode was enabled in the control panel. The control panel has control priority
over the "Axis" technology object. The axis cannot be controlled from the user program.
Table 9- 55
Drive status
Status
Description
Drive ready
Error
The drive has reported an error after failure of its ready signal.
Table 9- 56
Status
Standstill
Description
The axis is at a standstill.
(Tag of technology object: <Axis name>.StatusBits.StandStill)
Accelerating
407
Technology instructions
9.3 Motion control
Status
Description
Constant velocity
Decelerating
Table 9- 57
Status
Description
Positioning
Speed Command
The axis executes a task at set speed of motion control instruction "MC_MoveVelocity" or
"MC_MoveJog" or of the control panel.
(Tag of technology object: <Axis name>.StatusBits.SpeedCommand)
Homing
The axis executes a homing task of motion control instruction "MC_Home" or the control
panel.
(Tag of technology object: <Axis name>.StatusBits.Homing)
Table 9- 58
Error bits
Error
Description
A second axis is using the same PTO and HSC and is enabled with "MC_Power".
The "Axis" technology object was incorrectly configured or editable configuration data
were modified incorrectly during runtime of the user program.
(Tag of technology object: <Axis name>.ErrorBits.ConfigFault)
General Error
408
Technology instructions
9.3 Motion control
Motion status
Status
Description
Target position
The "Target position" field indicates the current target position of an active positioning task of
motion control instruction "MC_MoveAbsolute" or "MC_MoveRelative" or of the control panel.
The value of the "Target position" is only valid during execution of a positioning task.
(Tag of technology object: <Axis name>.MotionStatus.TargetPosition)
Current position
The "Current position" field indicates the current axis position. If the axis is not homed, the
value indicates the position value relative to the enable position of the axis.
Current velocity
Table 9- 60
Dynamic limits
Dynamic limit
Velocity
Description
The "Velocity" field indicates the configured maximum velocity of the axis.
(Tag of technology object: <Axis name>.Config.DynamicLimits.MaxVelocity)
Acceleration
The "Acceleration" field indicates the currently configured acceleration of the axis.
(Tag of technology object: <Axis name>.Config.DynamicDefaults.Acceleration)
Deceleration
The "Deceleration" field indicates the currently configured deceleration of the axis.
(Tag of technology object: <Axis name>.Config.DynamicDefaults.Deceleration)
409
Technology instructions
9.3 Motion control
9.3.6
9.3.6.1
410
Technology instructions
9.3 Motion control
Table 9- 61
([HFXWH
%XV\
'RQH
([HFXWH
%XV\
'RQH
&RPPDQG
$ERUWHG
&RPPDQG
$ERUWHG
(UURU
(UURU
The task is started with a positive edge at the input parameter "Execute". Depending on the programming, "Execute"
can still be reset to the value FALSE during the task, or the value TRUE can be retained until after completion of the task.
While the task is active, the output parameter "Busy" indicates the value TRUE.
With conclusion of the task (for example, for motion control instruction "MC_Home": Homing was successful), output
If "Execute" retains the value TRUE until after completion of the task, then "Done" also remains TRUE and changes its
value to FALSE together with "Execute".
If "Execute" has been set to FALSE before the task is complete, "Done" indicates the value TRUE for only one
execution cycle.
411
Technology instructions
9.3 Motion control
Table 9- 62
Abort
([HFXWH
%XV\
'RQH
([HFXWH
%XV\
'RQH
&RPPDQG
$ERUWHG
&RPPDQG
$ERUWHG
(UURU
(UURU
The task is started with a positive edge at the input parameter "Execute". Depending on the programming, "Execute"
can still be reset to the value FALSE during the task, or the value TRUE can be retained until after completion of the task.
While the task is active, the output parameter "Busy" indicates the value TRUE.
During task execution, the task is aborted by another motion control task. If the task is aborted, output parameter
"Busy" changes to FALSE and "CommandAborted" to TRUE.
If "Execute" retains the value TRUE until after the task is aborted, then "CommandAborted" also remains TRUE and
changes its value to FALSE together with "Execute".
If "Execute" has been set to FALSE before the task is aborted, "CommandAborted" indicates the value TRUE for only
one execution cycle.
412
Technology instructions
9.3 Motion control
Table 9- 63
Error
([HFXWH
%XV\
'RQH
([HFXWH
%XV\
'RQH
&RPPDQG
$ERUWHG
&RPPDQG
$ERUWHG
(UURU
(UURU
The task is started with a positive edge at the input parameter "Execute". Depending on the programming, "Execute"
can still be reset to the value FALSE during the task, or the value TRUE can be retained until after completion of the task.
While the task is active, the output parameter "Busy" indicates the value TRUE.
An error occurred during task execution. When the error occurs, the output parameter "Busy" changes to FALSE and
"Error" to TRUE.
If "Execute" retains the value TRUE until after the error occurs, then "Error" also remains TRUE and only changes its
value to FALSE together with "Execute".
If "Execute" has been set to FALSE before the error occurs, "Error" indicates the value TRUE for only one execution
cycle.
413
Technology instructions
9.3 Motion control
9.3.6.2
414
Technology instructions
9.3 Motion control
Table 9- 64
([HFXWH
%XV\
,Q9HORFLW\
([HFXWH
%XV\
,Q9HORFLW\
&RPPDQG
$ERUWHG
&RPPDQG
$ERUWHG
(UURU
(UURU
The task is started with a positive edge at the input parameter "Execute". Depending on the programming, "Execute"
can be reset to the value FALSE event before the parameterized velocity is reached, or alternatively only after it has been
reached.
While the task is active, the output parameter "Busy" indicates the value TRUE.
When the parameterized velocity is reached, the output parameter "InVelocity" changes to TRUE.
If "Execute" retains the value TRUE even after the parameterized velocity has been reached, the task remains active.
"InVelocity" and "Busy" retain the value TRUE and only change their status to FALSE together with "Execute".
If "Execute" has been reset to FALSE before the parameterized velocity is reached, the task is complete when the
parameterized velocity is reached. "InVelocity" indicates the value TRUE for one execution cycle and changes to FALSE
together with "Busy".
415
Technology instructions
9.3 Motion control
Table 9- 65
Abort
([HFXWH
%XV\
,Q9HORFLW\
([HFXWH
%XV\
,Q9HORFLW\
&RPPDQG
$ERUWHG
&RPPDQG
$ERUWHG
(UURU
(UURU
The task is started with a positive edge at the input parameter "Execute". Depending on the programming, "Execute"
can still be reset to the value FALSE during the task, or the value TRUE can be retained until after the task is aborted.
While the task is active, the output parameter "Busy" indicates the value TRUE.
During task execution, the task is aborted by another motion control task. If the task is aborted, output parameter
"Busy" changes to FALSE and "CommandAborted" to TRUE.
If "Execute" retains the value TRUE until after the task is aborted, then "CommandAborted" also remains TRUE and
changes its status to FALSE together with "Execute".
If "Execute" has been reset to FALSE before the task is aborted, "CommandAborted" indicates the value TRUE for only
one execution cycle.
Note
Under the following conditions, an abort is not indicated in output parameter
"CommandAborted":
The parameterized velocity has been reached, input parameter "Execute" has the value
FALSE, and a new motion control task is initiated.
When the parameterized velocity is reached and input parameter "Execute" has the value
FALSE, the task is complete. Therefore, the start of a new task is not indicated as an
abort.
416
Technology instructions
9.3 Motion control
Table 9- 66
Error
([HFXWH
%XV\
,Q9HORFLW\
([HFXWH
%XV\
,Q9HORFLW\
&RPPDQG
$ERUWHG
&RPPDQG
$ERUWHG
(UURU
(UURU
The task is started with a positive edge at the input parameter "Execute". Depending on the programming, "Execute"
can still be reset to the value FALSE during the task, or the value TRUE can be retained until after the error has occurred.
While the task is active, the output parameter "Busy" indicates the value TRUE.
An error occurred during task execution. When the error occurs, the output parameter "Busy" changes to FALSE and
"Error" to TRUE.
If "Execute" retains the value TRUE until after the error has occurred, then "Error" also remains TRUE and only
changes its status to FALSE together with "Execute".
If "Execute" has been reset to FALSE before the error occurs, "Error" indicates the value TRUE for only one execution
cycle.
Note
Under the following conditions, an error is not indicated in output parameter "Error":
The parameterized velocity has been reached, input parameter "Execute" has the value
FALSE, and an axis error occurs (software limit switch is approached, for example).
When the parameterized velocity is reached and input parameter "Execute" has the value
FALSE, the task is complete. After completion of the task, the axis error is only indicated
in the motion control instruction "MC_Power".
417
Technology instructions
9.3 Motion control
9.3.6.3
418
Technology instructions
9.3 Motion control
Table 9- 67
-RJ)RUZDUG
-RJ%DFNZDUG
%XV\
-RJ)RUZDUG
-RJ%DFNZDUG
%XV\
,Q9HORFLW\
,Q9HORFLW\
&RPPDQG
$ERUWHG
&RPPDQG
$ERUWHG
(UURU
(UURU
JogForward
JogBackward
The task is started with a positive edge at the input parameter "JogForward" or "JogBackward".
While the task is active, the output parameter "Busy" indicates the value TRUE.
When the parameterized velocity is reached, the output parameter "InVelocity" changes to TRUE.
When the input parameter "JogForward" or "JogBackward" is reset to the value FALSE, the axis motion ends. The axis
starts to decelerate. As a result, the axis no longer moves at constant velocity and the output parameter "InVelocity"
changes its status to FALSE.
If the axis has come to a standstill, the motion control task is complete and the output parameter "Busy" changes its
value to FALSE.
419
Technology instructions
9.3 Motion control
Table 9- 68
Abort
-RJ)RUZDUG
-RJ)RUZDUG
-RJ%DFNZDUG
%XV\
-RJ%DFNZDUG
%XV\
,Q9HORFLW\
&RPPDQG
$ERUWHG
&RPPDQG
$ERUWHG
,Q9HORFLW\
(UURU
(UURU
JogForward
JogBackward
The task is started with a positive edge at the input parameter "JogForward" or "JogBackward".
While the task is active, the output parameter "Busy" indicates the value TRUE.
During task execution, the task is aborted by another motion control task. If the task is aborted, output parameter
"Busy" changes to FALSE and "CommandAborted" to TRUE.
When the input parameter "JogForward" or "JogBackward" is reset to the value FALSE, the output parameter
"CommandAborted" changes its value to FALSE.
Note
The task abort is indicated in the output parameter "CommandAborted" for only one
execution cycle, if all conditions below are met:
The input parameters "JogForward" and "JogBackward" have the value FALSE (but the axis
is still decelerating) and a new motion control task is initiated.
420
Technology instructions
9.3 Motion control
Table 9- 69
-RJ)RUZDUG
-RJ%DFNZDUG
%XV\
,Q9HORFLW\
Error
-RJ)RUZDUG
-RJ%DFNZDUG
%XV\
,Q9HORFLW\
&RPPDQG
$ERUWHG
&RPPDQG
$ERUWHG
(UURU
(UURU
JogBackward
JogForward
The task is started with a positive edge at the input parameter "JogForward" or "JogBackward".
While the task is active, the output parameter "Busy" indicates the value TRUE.
An error occurred during task execution. When the error occurs, the output parameter "Busy" changes to FALSE and
"Error" to TRUE.
When the input parameter "JogForward" or "JogBackward" is reset to the value FALSE, the output parameter "Error"
changes its value to FALSE.
Note
An error occurrence is indicated in the output parameter "Error" for only one execution cycle,
if all the conditions below are met:
The input parameters "JogForward" and "JogBackward" have the value FALSE (but the axis
is still decelerating) and a new error occurs (software limit switch is approached, for
example).
421
Technology instructions
9.3 Motion control
422
Communication
10
The S7-1200 offers several types of communication between CPUs and programming
devices, HMIs, and other CPUs.
PROFINET
PROFINET is used for exchanging data through the user program with other
communications partners through Ethernet:
The CPU provides the following PROFINET and PROFIBUS support:
In V3.0, PROFINET supports 16 IO devices with a maximum of 256 submodules.
PROFIBUS allows 3 independent PROFIBUS DP Masters, supporting 32 IO devices
with a maximum of 512 submodules per IO device.
In V2.2. PROFINET supports 8 IO devices with a maximum of 128 submodules (if
eight or less PROFIBUS slaves or submodules are configured). PROFIBUS supports
a maximum of 16 PROFIBUS IO devices on a single master with a maximum of 256
submodules per IO device.
S7 communication
User Datagram Protocol (UDP) protocol
ISO on TCP (RFC 1006)
Transport Control Protocol (TCP)
PROFINET RT IO controller
As an IO controller using PROFINET RT, the CPU provides the following support on the
local PN network or through a PN/PN coupler (link). Refer to PROFIBUS and PROFINET
International, PI (www.us.profinet.com) for more information:
In V3.0, the S7-1200 communicates with up to 16 PN devices.
In V2.2, the S7-1200 communicates with up to 8 PN devices.
PROFIBUS
PROFIBUS is used for exchanging data through the user program with other
communications partners through the PROFIBUS network:
With CM 1242-5, the CPU operates as a PROFIBUS DP slave.
With CM 1243-5, the CPU operates as a PROFIBUS DP master class1.
In V3.0, PROFIBUS DP Slaves, PROFIBUS DP Masters, and ASi (the 3 left-side
communication modules) and PROFINET are separate.
423
Communication
10.1 Number of asynchronous communication connections supported
In V2.2, The CPU provides the following PROFINET and PROFIBUS support:
A total of 16 devices and 256 submodules, with a maximum of 16 PROFIBUS DP
slave devices and 256 submodules (if no PROFINET IO devices or submodules are
configured).
Note
In V2.2, the total of 16 PROFINET and PROFIBUS devices includes the following:
The PROFIBUS DP slave modules attached by the PROFIBUS DP master
(CM 1243-5)
Any PROFIBUS DP slave module (CM 1242-5) connected to the CPU
Any PROFINET device connected to the CPU over the PROFINET port
For example, a configuration with three PROFIBUS CMs (one CM 1243-5 master and
two CM 1242-5 slave modules) will reduce the maximum number of slave modules
that can be accessed by the PROFIBUS DP Master (CM 1243-5) to 14.
AS-i: The S7-1200 CM 1243-2 AS-i Master allows the attachment of an AS-i network to
an S7-1200 CPU.
CPU-to-CPU S7 communication
Teleservice communication
In TeleService via GPRS, an engineering station on which STEP 7 is installed communicates
via the GSM network and the Internet with a SIMATIC S7-1200 station with a CP 1242-7.
The connection runs via a telecontrol server that serves as an intermediary and is connected
to the Internet.
10.1
424
Communication
10.2 PROFINET
HMI connections: The CPU provides dedicated HMI connections to support up to 3 HMI
devices. (You can have up to 2 SIMATIC Comfort panels.) The total number of HMI is
affected by the types of HMI panels in your configuration. For example, you could have
up to three SIMATIC Basic panels connected to your CPU, or you could have up to two
SIMATIC Comfort panels with one additional Basic panel.
PG connections: The CPU provides connections to support 1 programming device (PG).
Webserver (HTTP) connections: The CPU provides connections for the Webserver.
10.2
PROFINET
10.2.1
Local/Partner connection
A Local / Partner (remote) connection defines a logical assignment of two communication
partners to establish communication services. A connection defines the following:
Communication partners involved (One active, one passive)
Type of connection (for example, a PLC, HMI, or device connection)
Connection path
Communication partners execute the instructions to set up and establish the communication
connection. You use parameters to specify the active and passive communication end point
partners. After the connection is set up and established, it is automatically maintained and
monitored by the CPU. Refer to the section on "Configuring the Local/Partner connection"
(Page 127) for information about configuring the parameters for the connection.
If the connection is terminated (for example, due to a line break), the active partner attempts
to re-establish the configured connection. You do not have to execute the communication
instruction again.
425
Communication
10.2 PROFINET
The CPU can communicate with other CPUs, with programming devices, with HMI devices,
and with non-Siemens devices using standard TCP communications protocols.
Programming device connected to the
CPU
Ethernet switching
The PROFINET port on the CPU 1211C, 1212C, and 1214C does not contain an Ethernet
switching device. A direct connection between a programming device or HMI and a CPU
does not require an Ethernet switch. However, a network with more than two CPUs or HMI
devices requires an Ethernet switch.
1
CPU 1215C
CSM1277
Ethernet switch
426
Communication
10.2 PROFINET
The CPU 1215C does have a 2-port Ethernet switch built into it. You can have a network
with a CPU 1215C and two other S7-1200 CPUs. You can also use the rack-mounted
CSM1277 4-port Ethernet switch for connecting multiple CPUs and HMI devices.
10.2.2
10.2.2.1
427
Communication
10.2 PROFINET
The following example shows the communication between two CPUs that utilize 2 separate
connections for sending and receiving the data.
The TSEND_C instruction in CPU_1 links to the TRCV_V in CPU_2 over the first
connection ("connection ID 1" on both CPU_1 and CPU_2).
The TRCV_C instruction in CPU_1 links to the TSEND_C in CPU_2 over the second
connection ("connection ID 2" on both CPU_1 and CPU_2).
&38B
&38B
76(1'B&
75&9B&
75&9B&
76(1'B&
428
Communication
10.2 PROFINET
The following example shows the communication between two CPUs that utilize 1
connection for both sending and receiving the data.
Each CPU uses a TCON instruction to configure the connection between the two CPUs.
The TSEND instruction in CPU_1 links to the TRCV instruction in CPU_2 by using the
connection ID ("connection ID 1") that was configured by the TCON instruction in CPU_1.
The TRCV instruction in CPU_2 links to the TSEND instruction in CPU_1 by using the
connection ID ("connection ID 1") that was configured by the TCON instruction in CPU_2.
The TSEND instruction in CPU_2 links to the TRCV instruction in CPU_1 by using the
connection ID ("connection ID 1") that was configured by the TCON instruction in CPU_2.
The TRCV instruction in CPU_1 links to the TSEND instruction in CPU_2 by using the
connection ID ("connection ID 1") that was configured by the TCON instruction in CPU_1.
&38B
&38B
7&21
76(1'
75&9
7&21
75&9
76(1'
429
Communication
10.2 PROFINET
As shown in the following example, you can also use individual TSEND and TRCV
instruction to communication over a connection created by a TSEND_C or TRCV_C
instruction. The TSEND and TRCV instructions do not themselves create a new connection,
so must use the DB and connection ID that was created by a TSEND_C, TRCV_C or TCON
instruction.
&38B
&38B
76(1'B&
75&9
75&9B&
76(1'
76(1'
75&9
See also
Configuring the Local/Partner connection path (Page 127)
10.2.2.2
Protocols
The integrated PROFINET port of the CPU supports multiple communications standards
over an Ethernet network:
Transport Control Protocol (TCP)
ISO on TCP (RFC 1006)
User Datagram Protocol (UDP)
Table 10- 1
Protocol
Usage examples
Communication
instructions
Addressing type
TCP
CPU-to-CPU
communication
Ad hoc mode
Transport of frames
TSEND_C, TRCV_C,
TCON, TDISCON,
TSEND, and TRCV
430
Communication
10.2 PROFINET
Protocol
Usage examples
Communication
instructions
Addressing type
ISO on TCP
CPU-to-CPU
communication
Ad hoc mode
Message
fragmentation and reassembly
Protocol-controlled
TSEND_C, TRCV_C,
TCON, TDISCON,
TSEND, and TRCV
CPU-to-CPU
communication
Built-in
Built-in
UDP
User program
communications
S7 communication
CPU-to-CPU
communication
Read/write data
from/to a CPU
PROFINET RT
10.2.2.3
CPU-to-PROFINET
IO device
communication
Ad hoc mode
Typically, TCP and ISO-on-TCP receive data packets of a specified length, ranging from 1 to
8192 bytes. However, the TRCV_C and TRCV communication instructions also provide an
"ad hoc" communications mode that can receive data packets of a variable length from 1 to
1472 bytes.
Note
If you store the data in an "optimized" DB (symbolic only), you can receive data only in
arrays of Byte, Char, USInt, and SInt data types.
To configure the TRCV_C or TRCV instruction for ad hoc mode, set the LEN parameter to
65535 (0xFFFF).
If you do not call the TRCV_C or TRCV instruction in ad hoc mode frequently, you could
receive more than one packet in one call. For example: If you were to receive five 100-byte
packets with one call, TCP would deliver these five packets as one 500-byte packet, while
ISO-on-TCP would restructure the packets into five 100-byte packets.
10.2.2.4
431
Communication
10.2 PROFINET
A connection-oriented protocol
Can be used very flexibly with third-party systems which exclusively support TCP
Routing-capable
Only static data lengths are applicable.
Messages are acknowledged.
Applications are addressed using port numbers.
Most of the user application protocols, such as TELNET and FTP, use TCP.
Programming effort is required for data management due to the SEND / RECEIVE
programming interface.
International Standards Organization (ISO) on Transport Control Protocol (TCP) (RFC 1006)
(ISO on TCP) is a mechanism that enables ISO applications to be ported to the TCP/IP
network. This protocol has the following features:
An efficient communications protocol closely tied to the hardware
Suitable for medium-sized to large data amounts (up to 8192 bytes)
In contrast to TCP, the messages feature an end-of-data identification and are messageoriented.
Routing-capable; can be used in WAN
Dynamic data lengths are possible.
Programming effort is required for data management due to the SEND / RECEIVE
programming interface.
Using Transport Service Access Points (TSAPs), TCP protocol allows multiple connections
to a single IP address (up to 64K connections). With RFC 1006, TSAPs uniquely identify
these communication end point connections to an IP address.
432
Communication
10.2 PROFINET
The minimum size of data that you can transmit (TSEND_C) or receive (TRCV_C) is one
byte; the maximum size is 8192 bytes. TSEND_C does not support the transmission of data
from boolean locations, and TRCV_C will not receive data into boolean locations. For
information transferring data with these instructions, see the section on data consistency
(Page 153).
Note
Initializing the communication parameters
After you insert the TSEND_C or TRCV_C instruction, use the "Properties" of the instruction
(Page 127) to configure the communication parameters. As you enter the parameters for the
communication partners in the inspector window, STEP 7 enters the corresponding data in
the DB for the instruction.
If you want to use a multi-instance DB, you must manually configure the DB on both CPUs.
Table 10- 2
LAD / FBD
SCL
"TSEND_C_DB"(
req:=_bool_in_,
cont:=_bool_in_,
len:=_uint_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
connect:=_struct_inout_,
data:=_variant_inout_,
com_rst:=_bool_inout_);
"TRCV_C_DB"(
en_r:=_bool_in_,
cont:=_bool_in_,
len:=_uint_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
rcvd_len=>_uint_out_,
connect:=_struct_inout_,
data:=_variant_inout_,
com_rst:=_bool_inout_);
Description
TSEND_C establishes a TCP or ISO on TCP
communication connection to a partner station,
sends data, and can terminate the connection.
After the connection is set up and established, it
is automatically maintained and monitored by
the CPU.
433
Communication
10.2 PROFINET
Table 10- 3
Data type
Description
REQ
IN
Bool
Control parameter REQ starts the send job with the connection
described in CONNECT on a rising edge.
IN
Bool
IN
Bool
0: Disconnect
(TSEND_C)
EN_R
(TRCV_C)
CONT
LEN
IN
UInt
CONNECT
IN_OUT
TCON_Param
DATA
IN_OUT
Variant
COM_RST
DONE
BUSY
ERROR
IN_OUT
OUT
OUT
OUT
Bool
Bool
Bool
Bool
0: Irrelevant
0: Job is completed.
0: No error
STATUS
OUT
Word
RCVD_LEN
OUT
Int
(TRCV_C)
Note
The TSEND_C instruction requires a low-to-high transition at the REQ input parameter to
start a send job. The BUSY parameter is then set to 1 during processing. Completion of the
send job is indicated by either the DONE or ERROR parameters being set to 1 for one scan.
During this time, any low-to-high transition at the REQ input parameter is ignored.
434
Communication
10.2 PROFINET
Note
The default setting of the LEN parameter (LEN = 0) uses the DATA parameter to determine
the length of the data being transmitted. Ensure that the DATA transmitted by the TSEND_C
instruction is the same size as the DATA parameter of the TRCV_C instruction.
TSEND_C operations
The following functions describe the operation of the TSEND_C instruction:
To establish a connection, execute TSEND_C with CONT = 1.
After successful establishing of the connection, TSEND_C sets the DONE parameter for
one cycle.
To terminate the communication connection, execute TSEND_C with CONT = 0. The
connection will be aborted immediately. This also affects the receiving station. The
connection will be closed there and data inside the receive buffer could be lost.
To send data over an established connection, execute TSEND_C with a rising edge on
REQ. After a successful send operation, TSEND_C sets the DONE parameter for one
cycle.
To establish a connection and send data, execute TSEND_C with CONT =1 and REQ =
1. After a successful send operation, TSEND_C sets the DONE parameter for one cycle.
TRCV_C operations
The following functions describe the operation of the TRCV_C instruction:
To establish a connection, execute TRCV_C with parameter CONT = 1.
To receive data, execute TRCV_C with parameter EN_R = 1. TRCV_C receives the data
continuously when parameters EN_R = 1 and CONT = 1.
To terminate the connection, execute TRCV_C with parameter CONT = 0. The
connection will be aborted immediately, and data could be lost.
TRCV_C handles the same receive modes as the TRCV instruction. The following table
shows how data is entered in the receive area.
Table 10- 4
Protocol
variant
TCP
Ad hoc mode
B#16#11
65535
1 to 1472
TCP
B#16#11
0 (recommended) or 1 to
8192, except 65535
1 to 8192
ISO on TCP
Ad hoc mode
B#16#12
65535
1 to 1472
ISO on TCP
Protocol-controlled
B#16#12
0 (recommended) or 1 to
8192, except 65535
1 to 8192
435
Communication
10.2 PROFINET
Note
Ad hoc mode
The "ad hoc mode" exists with the TCP and ISO on TCP protocol variants. You set "ad hoc
mode" by assigning "65535" to the LEN parameter. The receive area is identical to the area
formed by DATA. The length of the received data will be output to the parameter
RCVD_LEN.
If you store the data in an "optimized" DB (symbolic only), you can receive data only in
arrays of Byte, Char, USInt, and SInt data types.
Note
Importing of S7-300/400 STEP 7 projects containing "ad hoc mode" into the S7-1200
In S7-300/400 STEP 7 projects, "ad hoc mode" is selected by assigning "0" to the LEN
parameter. In the S7-1200, you set "ad hoc mode" by assigning "65535" to the LEN
parameter.
If you import an S7-300/400 STEP 7 project containing "ad hoc mode" into the S7-1200, you
must change the LEN parameter to "65535".
Note
Due to the asynchronous processing of TSEND_C, you must keep the data in the sender
area consistent until the DONE parameter or the ERROR parameter assumes the value
TRUE.
For TSEND_C, a TRUE state at the parameter DONE means that the data was sent
successfully. It does not mean that the connection partner CPU actually read the receive
buffer.
Due to the asynchronous processing of TRCV_C, the data in the receiver area are only
consistent when parameter DONE = 1.
Table 10- 5
BUSY
DONE
ERROR
Description
TRUE
irrelevant
irrelevant
FALSE
TRUE
FALSE
FALSE
FALSE
TRUE
The job was ended with an error. The cause of the error can be found
in the STATUS parameter.
FALSE
FALSE
FALSE
436
Communication
10.2 PROFINET
ERROR
STATUS
Description
0000
7000
7001
7002
7003
7004
8085
8086
8087
8088
LEN parameter is not valid for the memory area specified in DATA.
8089
8091
809A
The CONNECT parameter points to a field that does not match the length of the
connection description.
809B
The local_device_id in the connection description does not match the CPU.
80A1
Communications error:
80A3
80A4
IP address of the remote partner connection is invalid. For example, the remote partner
IP address is the same as the local partner IP address.
80A5
80A7
80B2
The CONNECT parameter points to a data block that was generated with the keyword
UNLINKED.
80B3
Inconsistent parameters:
437
Communication
10.2 PROFINET
ERROR
STATUS
Description
80B4
For a local TSAP length of 3 or greater and the first byte of the TSAP ID does not
have a value of either E0 or E1 (hexadecimal), then all bytes of the TSAP ID must
be valid ASCII characters.
Valid ASCII characters are byte values from 20 to 7E (hexadecimal).
80B7
Data type and/or length of the transmitted data does not fit in the area in the partner
CPU in which it is to be written.
80C3
80C4
8722
CONNECT parameter: Source area invalid: area does not exist in DB.
873A
877F
893A
See also
Parameters for the PROFINET connection (Page 129)
438
Communication
10.2 PROFINET
BUSY
DONE
ERROR
Description
TRUE
irrelevant
irrelevant
FALSE
TRUE
FALSE
FALSE
FALSE
TRUE
The job was ended with an error. The cause of the error can be found in the
STATUS parameter.
FALSE
FALSE
FALSE
439
Communication
10.2 PROFINET
Table 10- 8
LAD / FBD
Description
"TCON_DB"(
req:=_bool_in_,
ID:=_undef_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
connect:=_struct_inout_);
"TDISCON_DB"(
req:=_bool_in_,
ID:=_word_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_);
Table 10- 9
Data type
Description
REQ
IN
Bool
ID
IN
CONN_OUC (Word)
CONNECT
IN_OUT
TCON_Param
(TCON)
440
Communication
10.2 PROFINET
ERROR
STATUS
OUT
OUT
OUT
OUT
Data type
Description
Bool
0: Job is completed.
Bool
Bool
Word
0: No error
Both communication partners execute the TCON instruction to set up and establish the
communication connection. You use parameters to specify the active and passive
communication end point partners. After the connection is set up and established, it is
automatically maintained and monitored by the CPU.
If the connection is terminated due to a line break or due to the remote communications
partner, for example, the active partner attempts to re-establish the configured connection.
You do not have to execute TCON again.
An existing connection is terminated and the set-up connection is removed when the
TDISCON instruction is executed or when the CPU has gone into STOP mode. To set up
and re-establish the connection, you must execute TCON again.
Table 10- 10 ERROR and STATUS condition codes for TCON and TDISCON
ERROR
STATUS
Description
0000
7000
7001
7002
8086
8087
809B
TCON: The local_device_id in the connection description does not match the CPU.
80A1
80A2
80A3
Attempt being made to re-establish an existing connection (TCON) or terminate a nonexistent connection (TDISCON).
80A4
TCON: IP address of the remote connection end point is invalid; it may match the local
IP address.
80A5
80A7
TCON: Communications error: you executed TDISCON before TCON was complete.
TDISCON must first completely terminate the connection referenced by the ID.
()
441
Communication
10.2 PROFINET
ERROR
STATUS
Description
80B4
For a local TSAP length of 3 or greater and the first byte of the TSAP ID does not
have a value of either E0 or E1 (hexadecimal), then all bytes of the TSAP ID must
be valid ASCII characters.
Valid ASCII characters are byte values from 20 to 7E (hexadecimal).
80B6
80B7
TCON: Data type and/or length of the transmitted data does not fit in the area in the
partner CPU, in which it is to be written.
1)
80B8
TCON: Parameter in the local connection description and Parameter ID are different.
80C3
80C4
442
Communication
10.2 PROFINET
SCL
"TSEND_DB"(
req:=_bool_in_,
ID:=_word_in_,
len:=_uint_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
data:=_variant_inout_);
"TRCV_DB"(
en_r:=_bool_in_,
ID:=_word_in_,
len:=_uint_in_,
ndr=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
rcvd_len=>_uint_out_,
data:=_variant_inout_);
Description
TCP and ISO on TCP: TSEND sends data
through a communication connection from the
CPU to a partner station.
Table 10- 12 Data types for the parameters of TSEND and TRCV
Parameter and type
Data type
Description
REQ
IN
Bool
EN_R
IN
Bool
ID
IN
CONN_OUC
(Word)
LEN
DATA
IN
IN_OUT
UInt
Variant
443
Communication
10.2 PROFINET
Data type
Description
DONE
Bool
TSEND:
NDR
BUSY
OUT
OUT
Bool
OUT
Bool
TRCV:
ERROR
OUT
Bool
STATUS
OUT
Word
RCVD_LEN
OUT
Int
Note
The TSEND instruction requires a low-to-high transition at the REQ input parameter to start
a send job. The BUSY parameter is then set to 1 during processing. Completion of the send
job is indicated by either the DONE or ERROR parameters being set to 1 for one scan.
During this time, any low-to-high transition at the REQ input parameter is ignored.
TRCV Operations
The TRCV instruction writes the received data to a receive area that is specified by the
following two variables:
Pointer to the start of the area
Length of the area or the value supplied at the LEN input if not 0
Note
The default setting of the LEN parameter (LEN = 0) uses the DATA parameter to
determine the length of the data being transmitted. Ensure that the DATA transmitted by
the TSEND instruction is the same size as the DATA parameter of the TRCV instruction.
As soon as all the job data has been received, TRCV transfers it to the receive area and sets
NDR to 1.
444
Communication
10.2 PROFINET
Table 10- 13 Entering the data into the receive area
Protocol
variant
TCP
Ad hoc mode
B#16#11
65535
1 to 1472
TCP
B#16#11
0 (recommended) or 1 to
8192, except 65535
1 to 8192
ISO on TCP
Ad hoc mode
B#16#12
65535
1 to 1472
ISO on TCP
protocol-controlled
B#16#12
0 (recommended) or 1 to
8192, except 65535
1 to 8192
Note
Ad hoc mode
The "ad hoc mode" exists with the TCP and ISO on TCP protocol variants. You set "ad hoc
mode" by assigning "65535" to the LEN parameter. The receive area is identical to the area
formed by DATA. The length of the received data will be output to the parameter
RCVD_LEN. Immediately after receiving a block of data, TRCV enters the data in the receive
area and sets NDR to 1.
If you store the data in an "optimized" DB (symbolic only), you can receive data only in
arrays of Byte, Char, USInt, and SInt data types.
Note
Importing of S7-300/400 STEP 7 projects containing "ad hoc mode" into the S7-1200
In S7-300/400 STEP 7 projects, "ad hoc mode" is selected by assigning "0" to the LEN
parameter. In the S7-1200, you set "ad hoc mode" by assigning "65535" to the LEN
parameter.
If you import an S7-300/400 STEP 7 project containing "ad hoc mode" into the S7-1200, you
must change the LEN parameter to "65535".
Table 10- 14 ERROR and STATUS condition codes for TSEND and TRCV
ERROR
STATUS
Description
0000
New data accepted: The current length of the received data is shown in RCVD_LEN
(TRCV).
Start of job processing, data being sent: During this processing the operating
system accesses the data in the DATA send area (TSEND).
0
0
7000
7001
445
Communication
10.2 PROFINET
ERROR
STATUS
Description
7002
Follow-on instruction execution, receive job being processed: Data is written to the
receive area during this processing. For this reason, an error could result in
inconsistent data in the receive area (TRCV).
LEN parameter is greater than the largest permitted value (TSEND) and (TRCV).
LEN or DATA parameter changed since the first instruction execution (TRCV).
8085
8086
8088
The LEN parameter is larger than the memory area specified in DATA.
80A1
Communications error:
The specified connection has not yet established (TSEND and TRCV).
80C3
Internal lack of resources: A block with this ID is already being processed in a different
priority class.
80C4
See also
Parameters for the PROFINET connection (Page 129)
10.2.2.5
UDP
UDP is a standard protocol described by RFC 768: User Datagram Protocol. UDP provides a
mechanism for one application to send a datagram to another; however, delivery of data is
not guaranteed. This protocol has the following features:
A quick communications protocol, because it is very hardware-intimate
Suitable for small-sized to medium data amounts (up to 2048 bytes)
446
Communication
10.2 PROFINET
UDP is a simpler transport control protocol than TCP, with a thin layer that yields low
overheads
Can be used very flexibly with many third-party systems
Routing-capable
Uses port numbers to direct the datagrams
Messages are unacknowledged: The application is required to take responsibility for error
recovery and security
Programming effort is required for data management due to the SEND / RECEIVE
programming interface
UDP supports broadcast communication. To use broadcast, you must configure the IP
address portion of the ADDR configuration. For example: A CPU with an IP address of
192.168.2.10 and seubnet mask of 255.255.255.0 would use a broadcast address of
192.168.2.255.
SCL
"TUSEND_DB"(
req:=_bool_in_,
ID:=_word_in_,
len:=_uint_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
data:=_variant_inout_);
"TURCV_DB"(
en_r:=_bool_in_,
ID:=_word_in_,
len:=_uint_in_,
ndr=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
rcvd_len=>_uint_out_,
data:=_variant_inout_);
Description
The TUSEND instruction sends data via UDP to
the remote partner specified by the parameter
ADDR.
To start the job for sending data, call the TUSEND
instruction with REQ = 1.
447
Communication
10.2 PROFINET
TCON, TDISCON, TUSEND, and TURCV operate asynchronously, which means that the job
processing extends over multiple instruction executions.
Table 10- 16 TUSEND and TURCV data types for the parameters
Parameter and type
Data type
Description
REQ
IN
Bool
Starts the send job on a rising edge. The data is transferred from
the area specified by DATA and LEN.
IN
Bool
(TUSEND)
EN_R
(TURCV)
ID
IN
Word
LEN
IN
UInt
DONE
IN
Bool
(TUSEND)
NDR
OUT
Bool
(TURCV)
BUSY
ERROR
STATUS
OUT
OUT
OUT
Bool
Bool
Word
0: No error
448
Communication
10.2 PROFINET
Data type
Description
DATA
Variant
ADDR
IN_OUT
IN_OUT
Variant
A memory bit
A data block
The job status is indicated at the output parameters BUSY and STATUS. STATUS
corresponds to the RET_VAL output parameter of asynchronously functioning instructions.
The following table shows the relationships between BUSY, DONE (TUSEND), NDR
(TURCV), and ERROR. Using this table, you can determine the current status of the
instruction (TUSEND or TURCV) or when the sending (transmission) / receiving process is
complete.
Table 10- 17 Status of BUSY, DONE (TUSEND) / NDR (TURCV), and ERROR parameters
BUSY
DONE / NDR
ERROR
Description
TRUE
irrelevant
irrelevant
FALSE
TRUE
FALSE
FALSE
FALSE
TRUE
The job was ended with an error. The cause of the error can be
found in the STATUS parameter..
FALSE
FALSE
FALSE
Due to the asynchronous function of the instructions: For TUSEND, you must keep the data in the sender area
consistent until the DONE parameter or the ERROR parameter assumes the value TRUE. For TURCV, the data in the
receiver area are only consistent when the NDR parameter assumes the value TRUE.
Table 10- 18 TUSEND and TURCV condition codes for ERROR and STATUS
ERROR
STATUS
Description
0000
New data were accepted. The current length of the received data is shown in
RCVD_LEN (TURCV).
7000
449
Communication
10.2 PROFINET
ERROR
STATUS
Description
7001
Start of job processing, data being sent (TUSEND): During this processing, the
operating system accesses the data in the DATA send area.
Follow-on instruction execution, job being processed: During this processing, the
TURCV instruction writes data to the receive area. For this reason, an error could
result in inconsistent data in the receive area.
7002
8085
LEN parameter is greater than the largest permitted value, has the value 0 (TUSEND),
or you changed the value of the LEN or DATA parameter since the first instruction
execution (TURCV).
8086
8088
LEN parameter is larger than the memory area (TUSEND) or receive area (TURCV)
specified in DATA.
8089
80A1
Communications error:
The specified connection between user program and communications layer of the
operating system has not yet been established.
The specified connection between the user program and the communication layer of
the operating system is currently being terminated. Transmission (TUSEND) or a
receive job (TURCV) over this connection is not possible.
80A4
IP address of the remote connection end point is invalid; it is possible that it matches
the local IP address (TUSEND).
80B3
1
1
80C3
80C4
The connection between the user program and the communication level of the
operating system cannot be established at this time (TUSEND).
450
Communication
10.2 PROFINET
Operations
Both partners are passive in UDP communication. Typical parameter start values for the
"TCON_Param" data type are shown in the following table. Port numbers (LOCAL_TSAP_ID)
are written in a 2-byte format. All ports except for 161, 34962, 34963, and 34964 are
allowed.
Table 10- 19 "TCON_Param" data type parameter values
TCON instruction
The TUSEND instruction sends data through UDP to the remote partner specified in the
"TADDR_Param" data type. The TURCV instruction receives data through UDP. After a
successful execution of the TURCV instruction, the "TADDR_Param" data type shows the
address of the remote partner (the sender).
Table 10- 20 "TADDR_Param" data type parameter values
TUSEND instruction
10.2.2.6
T_CONFIG
The T_CONFIG instruction changes the IP configuration parameters of the PROFINET port
from the user program, allowing the permanent change or setting of the following features:
Station name
IP address
451
Communication
10.2 PROFINET
Subnet mask
Router address
Note
Located in the CPU "Properties", "Ethernet address" page, the "Set IP address using a
different method" (Page 457) radio button allows you to change the IP address online or
by using the "T_CONFIG" instruction after the program is downloaded. This IP address
assignment method is for the CPU only.
Located in the CPU "Properties", "Ethernet address" page, the "Set PROFINET device
name using a different method" (Page 458) radio button allows you to change the
PROFINET device name online or by using the "T_CONFIG" instruction after the program
is downloaded. This PROFINET device name assignment method is for the CPU only.
WARNING
After you use the T_CONFIG to change an IP configuration parameter, the CPU
restarts. The CPU will go to STOP mode, warm restart, and return to RUN mode.
Control devices can fail in an unsafe condition, resulting in unexpected operation of
controlled equipment. Such unexpected operations could result in death or serious injury
to personnel, and/or damage to equipment.
Ensure that your process will go to a safe state when the CPU restarts as a result of
T_CONFIG instruction execution.
SCL
"T_CONFIG_DB"(
req:=_bool_in_,
interface:=_word_in_,
conf_Data:=_variant_in_,
done=>_bool_out_,
busy=>_bool_out_,
error=>_bool_out_,
status=>_dword_out_,
err_loc=>_word_out_);
Description
Use the T_CONFIG instruction to change the IP
configuration parameters from your user program.
T_CONFIG works asynchronously. The execution
extends over multiple calls.
Data type
Description
REQ
Input
Bool
INTERFACE
Input
HW_Interface
ID of network interface
CONF_DATA
Input
Variant
DONE
Output
Bool
452
Communication
10.2 PROFINET
Data type
Description
BUSY
Bool
ERROR
Output
Output
Bool
0: No error
STATUS
Output
DWord
ERR_LOC
Output
DWord
The IP configuration information is placed in the CONF_DATA data block, along with a
Variant pointer on parameter CONF_DATA referenced above. The successful execution of
the T_CONFIG instruction ends with the handover of the IP configuration data to the network
interface. Errors are assigned to the STATUS output parameter.
Table 10- 23 Condition codes for ERROR and STATUS
ERROR
STATUS
Description
00000000
No error
00700000
00700100
00700200
C08xyy00
General failure
C0808000
C0808100
LADDR parameters for identification of the interface have been assigned a non-supported
hardware interface.
C0808200
CONF_DATA parameter error: Data type of the Variant pointer does not match the data
type Byte.
C0808300
CONF_DATA parameter error: The area pointer is not in the DB of the Variant pointer.
C0808400
C0808600
Reserved
C0808700
C0808800
The parameters of the CONF_DATA data block field_type_id are invalid. (Only
field_type_id = 0 is allowed.)
C0808900
The parameters of the CONF_DATA data block field_type_id are invalid or have been
used several times.
C0808A00
C0808B00
C0808C00
The Sub-block of the IP configuration is incorrectly placed (Sub-block wrong, wrong order,
or used multiple times).
C0808D00
C0808E00
C0808F00
453
Communication
10.2 PROFINET
ERROR
STATUS
Description
C0809000
The parameters of the subfield are write-protected (for example: parameters are specified
by configuration, or PNIO mode is enabled).
C0809100
Reserved
C0809400
A parameter in the Sub-block IP configuration has not been defined or may not be used.
C0809500
C080C200
Instruction cannot be executed. This error can occur if, for example, communication with
the interface has been lost.
C080C300
There are not enough resources. This error can occur if, for example, the instruction is
called multiple times with different parameters
C080C400
Communication failure. The error can occur temporarily and will require a repeat of the
user program.
C080D200
&21)B'%
,)B&21)B+HDGHU
VXEILHOGBW\SHBLG
VXEILHOGBOHQJWK
VXEILHOGBPRGH
Configuration DB
Configuration data
Subfield 1
Subfield 2
Subfield n
Subfield-specific parameters
454
Communication
10.2 PROFINET
Each subfield consists of a header (subfield_type_id, subfield_length, subfield_mode) and
the subfield-specific parameters. Each subfield must consist of an even number of bytes.
The subfield_mode supports a value of 1.
Note
Only one field (IF_CONF_Header) is currently allowed. Its parameters field_type_id and
field_id must have the value zero. Other fields with different values for field_type_id and
field_id are subject to future extensions.
In the IF_CONF_Header field, only two subfields, "addr" (IP address) and "nos" (Name of
station) are currently allowed.
Data type
Explanation
30
IF_CONF_V4
40
IF_CONF_NOS
Data type
Start value
Description
Id
UInt
30
subfield_type_id
len
UInt
18
subfield_length
mode
UInt
InterfaceAddress
IP_V4
Interface address
ADDR
ADDR[1]
Byte
b#16#C8
ADDR[2]
Byte
b#16#0C
ADDR[3]
Byte
b#16#01
ADDR[4]
Byte
b#16#90
SubnetMask
IP_V4
Subnet mask
ADDR
ADDR[1]
Byte
b#16#FF
ADDR[2]
Byte
b#16#FF
ADDR[3]
Byte
b#16#FF
ADDR[4]
Byte
b#16#00
DefaultRouter
IP_V4
Default router
ADDR
ADDR[1]
Byte
b#16#C8
ADDR[2]
Byte
b#16#0C
ADDR[3]
Byte
b#16#01
ADDR[4]
Byte
b#16#01
455
Communication
10.2 PROFINET
Table 10- 26 Elements of the IF_CONF_NOS data type
Name
Data type
Start value
Description
id
UInt
40
subfield_type_id
len
UInt
246
subfield_length
mode
UInt
Nos (Name of
station)
Array[1..240]
of Byte
Station name: You must occupy the ARRAY from the first byte. If
the ARRAY is longer than the station name to be assigned, you
must enter a zero byte after the actual station name (in
conformity with IEC 61158-6-10). Otherwise, nos is rejected and
the "T_CONFIG (Page 451)" instruction enters the error code
DW#16#C0809400 in STATUS. If you occupy the first byte with
zero, the station name is deleted.
456
Communication
10.2 PROFINET
457
Communication
10.2 PROFINET
10.2.2.7
458
Communication
10.2 PROFINET
ID input parameter
This is a reference to the "Local ID (hex)" on the "Network view" of "Devices and networks"
in STEP 7 and is the ID of the network that you want to use for this communication block.
The ID must be identical to the associated parameter ID in the local connection description.
Data type
Default
Description
DONE
Bool
FALSE
Is set TRUE for one execution to indicate that the last request
completed without errors; otherwise, FALSE.
NDR
Bool
FALSE
Is set TRUE for one execution to indicate that the requested action
has completed without error and new data has been received;
otherwise, FALSE.
BUSY
Bool
FALSE
Bool
FALSE
STATUS
Word
Is set TRUE for one execution to indicate that the last request
completed with errors, with the applicable error code in STATUS;
otherwise, FALSE.
Result status:
If none of the above bits are set, then the instruction returns
status results that describe the current state of the function.
STATUS retains its value for the duration of the execution of the
function.
Note
Note that DONE, NDR, and ERROR are set for one execution only.
459
Communication
10.2 PROFINET
Restricted TSAPs and port numbers for passive ISO and TCP communication
If you use the "TCON" instruction to set up and establish a passive communications
connection, the following port addresses are restricted and should not be used:
ISO TSAP (passive):
01.00, 01.01, 02.00, 02.01, 03.00, 03.01
10.00, 10.01, 11.00, 11.01, ... BF.00, BF.01
TCP port (passive): 5001, 102, 123, 20, 21, 25, 34962, 34963, 34964, 80
UDP port (passive): 161, 34962, 34963, 34964
10.2.3
Consider the following when setting up communications between a CPU and a programming
device:
Configuration/Setup: Hardware configuration is required.
No Ethernet switch is required for one-to-one communications; an Ethernet switch is
required for more than two devices in a network.
10.2.3.1
460
Communication
10.2 PROFINET
Follow the steps below to create the hardware connection between a programming device
and a CPU:
1. Install the CPU (Page 49).
2. Plug the Ethernet cable into the PROFINET port shown below.
3. Connect the Ethernet cable to the programming device.
PROFINET port
10.2.3.2
461
Communication
10.2 PROFINET
10.2.3.3
10.2.3.4
10.2.4
HMI-to-PLC communication
The CPU supports PROFINET
communications connections to HMIs. The
following requirements must be considered
when setting up communications between
CPUs and HMIs:
Configuration/Setup:
The PROFINET port of the CPU must be configured to connect with the HMI.
The HMI must be setup and configured.
462
Communication
10.2 PROFINET
The HMI configuration information is part of the CPU project and can be configured and
downloaded from within the project.
No Ethernet switch is required for one-to-one communications; an Ethernet switch is
required for more than two devices in a network.
Note
The rack-mounted CSM1277 4-port Ethernet switch can be used to connect your CPUs
and HMI devices. The PROFINET port on the CPU does not contain an Ethernet
switching device.
Supported functions:
The HMI can read/write data to the CPU.
Messages can be triggered, based upon information retrieved from the CPU.
System diagnostics
Table 10- 30 Required steps in configuring communications between an HMI and a CPU
Step
1
Task
Establishing the hardware communications connection
A PROFINET interface establishes the physical connection between an HMI and a CPU. Since AutoCross-Over functionality is built into the CPU, you can use either a standard or crossover Ethernet cable
for the interface. An Ethernet switch is not required to connect an HMI and a CPU.
Refer to "Communication with a programming device: Establishing the hardware communications
connection" (Page 460) for more information.
10.2.4.1
463
Communication
10.2 PROFINET
To create a PROFINET connection, click the green (PROFINET) box on the first device, and
drag a line to the PROFINET box on the second device. Release the mouse button and your
PROFINET connection is joined.
Refer to "Device Configuration: Creating a network connection" (Page 126) for more
information.
10.2.5
PLC-to-PLC communication
A CPU can communicate with another CPU on a
network by using the TSEND_C and TRCV_C
instructions.
Task
Establishing the hardware communications connection
A PROFINET interface establishes the physical connection between two CPUs. Since Auto-Cross-Over
functionality is built into the CPU, you can use either a standard or crossover Ethernet cable for the
interface. An Ethernet switch is not required to connect the two CPUs.
Refer to "Communication with a programming device: Establishing the hardware communications
connection" (Page 460) for more information.
464
Communication
10.2 PROFINET
Step
5
Task
Configuring transmit (send) and receive parameters
You must configure TSEND_C and TRCV_C instructions in both CPUs to enable communications between
them.
Refer to "Configuring communications between two CPUs: Configuring transmit (send) and receive
parameters" (Page 465) for more information.
10.2.5.1
10.2.5.2
10.2.5.3
465
Communication
10.2 PROFINET
You can assign tag memory locations to the inputs and outputs, as shown in the following
figure:
466
Communication
10.2 PROFINET
467
Communication
10.2 PROFINET
You can assign tag memory locations to the inputs and outputs, as shown in the following
figure:
10.2.6
Result
468
Communication
10.2 PROFINET
You can now connect the PROFINET IO device to the CPU:
1. Right-click the "Not assigned" link on the device and select "Assign new IO controller"
from the context menu to display the "Select IO controller" dialog.
2. Select your S7-1200 CPU (in this example, "PLC_1") from the list of IO controllers in the
project.
3. Click "OK" to create the network connection.
469
Communication
10.2 PROFINET
470
Communication
10.2 PROFINET
Table 10- 33 Configuring the ET200S PROFINET IO cycle time
ET200 S PROFINET IO device
PROFINET port
10.2.7
Diagnostics
471
Communication
10.3 PROFIBUS
IO access errors
These errors are written to the diagnostics buffer. The CPU does not take any action or
switch to STOP.
10.2.8
10.2.9
Diagnostic instructions
Refer to the "Diagnostics (PROFINET or PROFIBUS)": "Diagnostics instructions" (Page 297)
for information on how to use these instructions with these communication networks.
10.2.10
10.3
PROFIBUS
A PROFIBUS system uses a bus master to poll slave devices distributed in a multi-drop
fashion on an RS485 serial bus. A PROFIBUS slave is any peripheral device (I/O
transducer, valve, motor drive, or other measuring device) which processes information and
sends its output to the master. The slave forms a passive station on the network since it
does not have bus access rights, and can only acknowledge received messages, or send
response messages to the master upon request. All PROFIBUS slaves have the same
priority, and all network communication originates from the master.
A PROFIBUS master forms an "active station" on the network. PROFIBUS DP defines two
classes of masters. A class 1 master (normally a central programmable controller (PLC) or a
PC running special software) handles the normal communication or exchange of data with
the slaves assigned to it. A class 2 master (usually a configuration device, such as a laptop
or programming console used for commissioning, maintenance, or diagnostics purposes) is
a special device primarily used for commissioning slaves and for diagnostic purposes.
472
Communication
10.3 PROFIBUS
The S7-1200 is connected to a PROFIBUS network as a DP slave with the CM 1242-5
communication module. The CM 1242-5 (DP slave) module can be the communications
partner of DP V0/V1 masters. In the figure below, the S7-1200 is a DP slave to an S7-300
controller.
If a CM 1242-5 and a CM 1243-5 are installed together, an S7-1200 can perform as both a
slave of a higher-level DP master system and a master of a lower-level DP master system,
simultaneously.
For V3.0, you can configure a maximum of three PROFIBUS CMs per station, in which there
can be any combination of DP master or DP slave CMs. DP masters in a V3.0
implementation can each control a maximum of 32 slaves.
For V2.2, you can configure a maximum of three PROFIBUS CMs per station, of which only
one may be a DP master. A DP master in a V2.2 implementation can control a maximum of
16 slaves.
473
Communication
10.3 PROFIBUS
10.3.1
10.3.1.1
Connecting to PROFIBUS
10.3.1.2
Bus protocol
The PROFIBUS CMs use the PROFIBUS DP-V1 protocol.
474
Communication
10.3 PROFIBUS
475
Communication
10.3 PROFIBUS
Functions not supported by the CM 1243-5:
SYNC/FREEZE
Get_Master_Diag
10.3.1.3
Electrical connections
Power supply
The CM 1242-5 is supplied with power via the backplane bus of the SIMATIC station.
The CM 1243-5 has a separate connector for the 24 VDC power supply.
PROFIBUS
The RS-485 interface of the PROFIBUS connector is a 9-pin D-sub female connector.
You also have the option of connecting to optical PROFIBUS networks via an Optical Bus
Terminal OBT or an Optical Link Module OLM.
476
Communication
10.3 PROFIBUS
Further information
You will find detailed information on the PROFIBUS CMs in the manuals of the devices. You
will find these on the Internet on the pages of Siemens Industrial Automation Customer
Support under the following entry IDs:
CM 1242-5:
49852105 (http://support.automation.siemens.com/WW/view/en/49852105)
CM 1243-5:
49851842 (http://support.automation.siemens.com/WW/view/en/49851842)
10.3.1.4
SIMATIC S7-300
PROFIBUS
SIMATIC S7-1200
with CM 1242-5
OLM
OLM
PROFINET/
Industrial Ethernet
PROFIBUS
(LWL)
Figure 10-1
SIMATIC S7-1200
with CM 1242-5
SIMATIC S7-1200
with CM 1243-5
PROFIBUS
PG/PC/IPC
Figure 10-2
SINAMICS
ET 200S
477
Communication
10.3 PROFIBUS
10.3.2
10.3.2.1
Table 10- 34 Adding a PROFIBUS CM 1243-5 (DP master) module to the device configuration
Module
Result
CM 1243-5
(DP
master)
Use the hardware catalog to add DP slaves as well. For example, to add an ET200 S DP
slave, in the Hardware Catalog, expand the following containers:
Distributed I/O
ET200 S
Interface modules
PROFIBUS
Next, select "6ES7 151-1BA02-0AB0" (IM151-1 HF) from the list of part numbers, and add
the ET200 S DP slave as shown in the figure below.
Table 10- 35 Adding an ET200 S DP slave to the device configuration
Insert the DP slave
10.3.2.2
Result
478
Communication
10.3 PROFIBUS
In the Devices and Networks portal, use the "Network view" to create the network
connections between the devices in your project. To create the PROFIBUS connection,
select the purple (PROFIBUS) box on the first device. Drag a line to the PROFIBUS box on
the second device. Release the mouse button and your PROFIBUS connection is joined.
Refer to "Device Configuration: Creating a network connection" (Page 126) for more
information.
10.3.2.3
ET200 S DP slave
PROFIBUS port
Assigning the PROFIBUS address
In a PROFIBUS network, each device is assigned a PROFIBUS address. This address can
range from 0 through 127, with the following exceptions:
Address 0: Reserved for network configuration and/or programming tools attached to the
bus
Address 1: Reserved by Siemens for the first master
Address 126: Reserved for devices from the factory that do not have a switch setting and
must be re-addressed through the network
Address 127: Reserved for broadcast messages to all devices on the network and may
not be assigned to operational devices
Thus, the addresses that may be used for PROFIBUS operational devices are 2 through
125.
479
Communication
10.3 PROFIBUS
In the Properties window, select the "PROFIBUS address" configuration entry. STEP 7
displays the PROFIBUS address configuration dialog, which is used to assign the
PROFIBUS address of the device.
Parameters
Description
Name of the Subnet to which the device is connected. Click the "Add new subnet" button to create a
new subnet. "Not connected" is the default. Two connection types are possible:
Address
Highest address
Transmission rate
10.3.3
10.3.4
Diagnostic instructions
Refer to the "Diagnostics (PROFINET or PROFIBUS)": "Diagnostics instructions" (Page 297)
for information on how to use these instructions with these communication networks.
S7-1200 Programmable controller
480
Communication
10.4 AS-i
10.3.5
10.4
AS-i
The S7-1200 AS-i master CM 1243-2 allows the attachment of an AS-i network to an S71200 CPU.
The actuator/sensor interface, or AS-i, is a single master network connection system for the
lowest level in automation systems. The CM 1243-2 serves as the AS-i master for the
network. Using a single AS-i cable, sensors and actuators (AS-i slave devices) can be
connected to the CPU through the CM 1243-2. The CM 1243-2 handles all AS-i network
coordination and relays data and status information from the actuators and sensors to the
CPU through the I/O addresses assigned to the CM 1243-2. You can access binary or
analog values depending on the slave type. The AS-i slaves are the input and output
channels of the AS-i system and are only active when called by the CM 1243-2.
In the figure below, the S7-1200 is an AS-i master controlling AS-i operator panel and I/O
module digital/analog slave devices.
10.4.1
481
Communication
10.4 AS-i
10.4.1.1
Table 10- 38 Adding an AS-i master CM1243-2 module to the device configuration
Module
Result
CM 1243-2
AS-i
Master
Use the hardware catalog to add AS-i slaves as well. For example, to add an "I/O module,
compact, digital, input" slave, in the Hardware Catalog, expand the following containers:
Field devices
AS-Interface slaves
Next, select "3RG9 001-0AA00" (AS-i SM-U, 4DI) from the list of part numbers, and add the
"I/O module, compact, digital, input" slave as shown in the figure below.
Table 10- 39 Adding an AS-i slave to the device configuration
Insert the AS-i slave
10.4.1.2
Result
482
Communication
10.4 AS-i
10.4.1.3
Description
General
Operating parameters
I/O addresses
Note
"Diagnostic interrupt for faults in the AS-i configuration" and "Automatic address
programming" are always active and are therefore shown in gray.
10.4.1.4
AS-i port
483
Communication
10.4 AS-i
Description
Network
Address(es)
Assigned AS-i address for the slave device in range of 1(A or B) to 31(A or B) for a total of up to 62
slave devices
10.4.2
10.4.2.1
484
Communication
10.4 AS-i
The assignment of the AS-i connections of the AS-i digital slaves to the data bits of the
assigned byte is indicated in the inspection window of the AS-i master CM 1243-2.
You can access the data of the AS-i slaves in the user program by using the displayed I/O
addresses with the appropriate bit logic operations (for example, "AND") or bit assignments.
Note
"System assignment" is automatically activated if you do not configure the AS-i slaves with
STEP 7.
If you do not configure any slaves, you must inform the AS-i master CM1243-2 about the
actual bus configuration using the online function "ACTUAL > EXPECTED".
Further information
You can find detailed information on the AS-i master CM 1243-2 in the "AS-i master CM
1243-2 and AS-i data decoupling unit DCM 1271 for SIMATIC S7-1200" Manual
(http://support.automation.siemens.com/WW/view/en/50414115/133300).
485
Communication
10.4 AS-i
10.4.2.2
Access to the digital data is performed here in bytes (in other words, one byte is assigned to
each AS-i digital slave). When you configure the AS-i slaves in STEP 7, the I/O address for
accessing the data from the user program is displayed in the inspection window for the
respective AS-i slave.
The digital input module (AS-i SM-U, 4DI) in the AS-i network above has been assigned
slave address 1. By clicking on the digital input module, the "AS interface" tab in the device
"Properties" displays the slave address, as shown below:
486
Communication
10.4 AS-i
The digital input module (AS-i SM-U, 4DI) in the AS-i network above has been assigned I/O
address 2. By clicking on the digital input module, the "I/O addresses" tab in the device
"Properties" displays the I/O address, as shown below:
You can access the data of the AS-i slaves in the user program by using their I/O addresses
with the appropriate bit logic operations (for example, "AND") or bit assignments. The
following simple program illustrates how the assignment works:
Input 2.0 is polled in this program. In the AS-i system, this input belongs to slave1 (Input byte
2, bit 0). Output 4.3, which is then set, corresponds to AS-i slave 3 (Output byte 4, bit 3)
Further information
You can find detailed information on the AS-i master CM 1243-2 in the "AS-i master CM
1243-2 and AS-i data decoupling unit DCM 1271 for SIMATIC S7-1200" Manual
(http://support.automation.siemens.com/WW/view/en/50414115/133300).
487
Communication
10.4 AS-i
10.4.3
10.4.4
488
Communication
10.5 S7 communication
In the "Set AS-i address" field, you can change the AS-i slave address. A new slave that has
not been assigned an address always has address 0. It is detected by the master as a new
slave without an address assignment and is not included in normal communication until
assigned an address.
Configuration error
When the yellow "CER" LED is ON, there is an error in the AS-i slave device configuration.
Select the "ACTUAL > EXPECTED" button to overwrite the AS-i master CM1243-2 module
slave device configuration with the AS-i field network slave device configuration.
10.5
S7 communication
10.5.1
489
Communication
10.5 S7 communication
Table 10- 42 GET and PUT instructions
LAD / FBD
SCL
"GET_DB"(
req:=_bool_in_,
ID:=_word_in_,
ndr=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
addr_1:=_remote_inout_,
[...addr_4:=_remote_inout_,]
rd_1:=_variant_inout_
[,...rd_4:=_variant_inout_]);
Description
"PUT_DB"(
req:=_bool_in_,
ID:=_word_in_,
done=>_bool_out_,
error=>_bool_out_,
status=>_word_out_,
addr_1:=_remote_inout_,
[...addr_4:=_remote_inout_,]
sd_1:=_variant_inout_,
[....sd_4:=_variant_inout_]);
Data type
Description
REQ
Input
Bool
ID
Input
CONN_PRG
(Word)
S7 connection ID (Hex)
NDR (GET)
Output
Bool
DONE (PUT)
Output
Bool
DONE:
490
Communication
10.5 S7 communication
Data type
Description
ERROR
Output
Bool
STATUS
Output
Word
ERROR=0
STATUS value:
ERROR=1
There is an error. STATUS supplies detailed information about
the nature of the error.
ADDR_1
InOut
Remote
ADDR_2
InOut
Remote
ADDR_3
InOut
Remote
ADDR_4
InOut
Remote
RD_1 (GET)
SD_1 (PUT)
InOut
Variant
Pointer to the memory areas in the local CPU that stores the data
to be read (GET) or sent (PUT).
RD_2 (GET)
SD_2 (PUT)
InOut
Variant
Data types allowed: Bool (only a single bit allowed), Byte, Char,
Word, Int, DWord, DInt, or Real.
RD_3 (GET)
SD_3 (PUT)
InOut
Variant
Note: If the pointer accesses a DB, you must specify the absolute
address, such as:
RD_4 (GET)
SD_4 (PUT)
InOut
Variant
P# DB10.DBX5.0 Byte 10
Pointer to the memory areas in the remote CPU that stores the
data to be read (GET) or that is sent (PUT).
You must ensure that the length (number of bytes) and data types for the ADDR_x (remote
CPU) and RD_x or SD_x (local CPU) parameters match. The number after the identifier
"Byte" is the number of bytes referenced by the ADDR_x, RD_x, or SD_x parameter.
Note
The total number of bytes received on a GET instruction or the total number of bytes sent on
a PUT instruction is limited. The limitations are based on how many of the four possible
address and memory areas you use:
If you use only ADDR_1 and RD_1/SD_1, a GET instruction can get 222 bytes and a PUT
instruction can send 212 bytes.
If you use ADDR_1, RD_1/SD_1, ADDR_2, and RD_2/SD_2, a GET instruction can get a
total of 218 bytes and a PUT instruction can send a total of 196 bytes.
If you use ADDR_1, RD_1/SD_1, ADDR_2, RD_2/SD_2, ADDR_3, and RD_3/SD_3 a
GET instruction can get a total of 214 bytes and a PUT instruction can send a total of 180
bytes.
If you use ADDR_1, RD_1/SD_1, ADDR_2, RD_2/SD_2, ADDR_3, RD_3/SD_3, ADDR_4,
RD_4/SD_4 a GET instruction can get a total of 210 bytes and a PUT instruction can
send a total of 164 bytes.
The sum of the number of bytes of each of your address and memory area parameters must
be less than or equal to the defined limits. If you exceed these limits, the GET or PUT
instruction returns an error.
491
Communication
10.5 S7 communication
On the rising edge of the REQ parameter, the read operation (GET) or write operation (PUT)
loads the ID, ADDR_1, and RD_1 (GET) or SD_1 (PUT) parameters.
For GET: The remote CPU returns the requested data to the receive areas (RD_x),
starting with the next scan. When the read operation has completed without error, the
NDR parameter is set to 1. A new operation can only be started only after the previous
operation has completed.
For PUT: The local CPU starts sending the data (SD_x) to the memory location (ADDR_x)
in the remote CPU. When the write operation has completed without error, the remote
CPU returns an execution acknowledgement. The DONE parameter of the PUT
instruction is then set to 1. A new write operation can only be started after the previous
operation has completed.
Note
To ensure data consistency, always evaluate when the operation has been completed
(NDR = 1 for GET, or DONE = 1 for PUT) before accessing the data or initiating another
read or write operation.
The ERROR and STATUS parameters provide information about the status of the read
(GET) or write (PUT) operation.
Table 10- 44 Error information
ERROR
STATUS
(decimal)
11
Description
New job cannot take effect since previous job is not yet completed.
The job is now being processed in a priority class having lower priority.
25
Negative acknowledgement from the partner device. The task cannot be executed.
Errors in the send area pointers (RD_x for GET, or SD_x for PUT) involving the data
length or the data type.
10
Access to the local user memory not possible (for example, attempting to access a
deleted DB)
12
492
Communication
10.5 S7 communication
ERROR
STATUS
(decimal)
Description
20
10.5.2
27
Creating an S7 connection
The connection type that you select creates a communication connection to a partner
station. The connection is set up, established, and automatically monitored.
In the Devices and Networks portal, use the "Network view" to create the network
connections between the devices in your project. First, click the "Connections" tab, and then
select the connection type with the dropdown, just to the right (for example, an S7
connection). Click the green (PROFINET) box on the first device, and drag a line to the
PROFINET box on the second device. Release the mouse button and your PROFINET
connection is joined.
Refer to "Creating a network connection" (Page 126) for more information.
Click the "Highlighted: Connection" button to access the "Properties" configuration dialog of
the communication instruction.
10.5.3
493
Communication
10.5 S7 communication
10.5.4
The inspector window displays the properties of the connection whenever you have selected
any part of the instruction. You can specify the communication parameters in the
"Configuration" tab of the "Properties" for the communication instruction.
10.5.4.1
Connection parameters
The "Connection parameters" page allows the user to configure the necessary S7
connection and to configure the parameter "Connection ID" that is referenced by the
GET/PUT block parameter "ID". The page's content has information about the local endpoint
and allows the user to define the local interface. The user can also define the partner end
point.
The "Block parameters" page allows the user to configure the additional block parameters.
494
Communication
10.5 S7 communication
Definition
End point
Interface
Interface type
Type of interface
Subnet name
Address
Assigned IP addresses
Note: The user can specify the remote address of a third party device for an
"unspecified" communication partner.
Connection ID
Connection name
Local and Partner CPU data storage location: Automatically generated by the
GET/PUT connection parameter assignment
Active connection
establishment
One-way
495
Communication
10.5 S7 communication
Connection ID parameter
There are three ways to change the system-defined connection IDs:
1. The user can change the current ID directly on the GET/PUT block. If the new ID belongs
to an already existing connection, the connection is changed.
2. The user can change the current ID directly on the GET/PUT block, but the new ID does
not already exist. A new S7 connection is created by the system.
3. The user can change the current ID through the "Connection overview" dialog: The userinput is synchronized with the ID-parameter on the corresponding GET/PUT block.
Note
The parameter "ID" of the GET/PUT block is not a connection name, but a numerical
expression which is written like the following example: W#16#1
496
Communication
10.5 S7 communication
10.5.4.2
For the GET or PUT instruction, the "Properties" tab is automatically displayed in the
inspector window with the following menu selections:
"Configuration"
"Connection parameters"
497
Communication
10.5 S7 communication
Definition
End point
Interface
A connection line appears between the PLC_1- and PLC_3 device images
(green Ethernet line).
Interface type
Subnet name
Address
Connection ID
498
Communication
10.5 S7 communication
Parameter
Definition
Connection name
Active connection
establishment
Checked and enabled to select the Local CPU as the active connection.
One-way
The GET/PUT icon in the Property View tree also changes from red to green.
499
Communication
10.5 S7 communication
Definition
End point
Interface
A connection line appears between the PLC_1- and PLC_3 device images
(purple PROFIBUS line).
Interface type
Subnet name
"Local Subnet name" contains " PROFIBUS _1"; control is read only.
"Partner Subnet name" contains " PROFIBUS _1"; control is read only.
Address
Connection ID
500
Communication
10.5 S7 communication
Parameter
Definition
Connection name
Active connection
establishment
Read-only, checked, and enabled to select the Local CPU as the active
connection.
One-way
The GET/PUT icon in the Property View tree also changes from red to green.
501
Communication
10.5 S7 communication
502
Web server
11
The Web server for the S7-1200 provides Web page access to data about your CPU and
process data within the CPU.
503
Web server
11.1 Enabling the Web server
For browser-related restrictions that can interfere with the display of standard or user-defined
Web pages, see the Constraints (Page 558) section.
11.1
504
Web server
11.2 Standard web pages
11.2
11.2.1
505
Web server
11.2 Standard web pages
Secure access
You can use https:// instead of http:// for secure access to the standard Web pages. When
you connect to the S7-1200 with https://, the Web site encrypts the session with a digital
certificate. The data is securely transmitted and not accessible for anyone to view. You will
typically get a security warning that you can confirm with "Yes" to proceed to the standard
Web pages. To avoid the security warning with each secure access, you can import the
Siemens software certificate to your Web browser (Page 560).
11.2.2
4 5
506
Web server
11.2 Standard web pages
Note
Printing standard Web pages
When printing standard Web page content, note that the printed contents can sometimes
differ from the displayed page. For example, a print copy of the Diagnostic buffer page might
contain new diagnostic entries that are not shown on the Diagnostic buffer page display. If
automatic refresh is not enabled, the page display shows the diagnostic events at the time
the page was initially displayed and the print copy contains the diagnostic events at the time
the print function was executed.
Logging in
No log in is required to view the data in the standard Web pages. To perform certain actions
such as changing the operating mode of the controller, writing values to memory, and
updating the CPU firmware you must log in as the "admin" user.
The log in frame is near the upper left corner on each page.
507
Web server
11.2 Standard web pages
Logging out
To log out the "admin" user, simply click the "Log out" link from any
page.
You can continue to access and view standard Web pages when not logged in, but you
cannot perform the actions that are restricted to the "admin" user. Each of the standard Web
page descriptions defines the actions, if any, that require the "admin" log in.
11.2.3
Introduction
The Introduction page is the welcome screen for entry into the S7-1200 standard Web
pages.
From this page, you click "Enter" to access the S7-1200 standard Web pages. At the top of
the screen are links to useful Siemens Web sites, as well as a link to download the Siemens
security certificate (Page 560).
508
Web server
11.2 Standard web pages
11.2.4
Start
The Start page displays a representation of the CPU to which you are connected and lists
general information about the CPU. If you log in as the "admin" user, you can also change
the operating mode of the CPU and flash the LEDs.
and
Buttons for flashing LEDs, and changing operating mode only appear on the Start page
when you log in as the "admin" user.
509
Web server
11.2 Standard web pages
11.2.5
Identification
The Identification page displays identifying characteristics of the CPU:
Serial number
Order numbers
Version information
The Identification page does not vary with the "admin" login.
11.2.6
Diagnostic Buffer
The diagnostic buffer page displays diagnostic events. From the selector, you can choose
what range of diagnostic buffer entries to display, either 1 to 25 or 26 to 50. The top part of
the page displays those entries with the CPU time and date of when the event occurred. The
times are system times from the CPU time-of-day clock (Page 86).
From the top part of the page, you can select any individual entry to show detailed
information about that entry in the bottom part of the page.
510
Web server
11.2 Standard web pages
The Diagnostic buffer page does not vary with the "admin" login.
11.2.7
Module Information
The module information page provides information about all the modules in the local rack.
The top section of the screen shows a summary of the modules, and the bottom section
shows status and identification of the selected module.
Status display
511
Web server
11.2 Standard web pages
Identification display
Drilling down
You can select a link in the top section to drill down to the module information for that
particular module. Modules with submodules have links for each submodule. The type of
information that is displayed varies with the module selected. For example, the module
information dialog initially displays the name of the SIMATIC 1200 station, a status indicator,
and a comment. If you drill down to the CPU, the module information displays the name of
the digital and analog inputs and outputs that the CPU model provides (for example,
"DI14/DO10", "AI2"), addressing information for the I/O, status indicators, slot numbers, and
comments.
As you drill down, the module information page shows the path you have followed. You can
click any link in this path to return to a higher level.
512
Web server
11.2 Standard web pages
Sorting fields
When the list displays multiple modules, you can click the column header
of a field to sort it either up or down by that field.
Status information
The status tab in the bottom section of the module information page displays a description of
the current status of the module that is selected in the top section.
Identification
The identification tab displays the serial number and revision numbers of the selected
module.
The module information page does not vary with the "admin" login.
11.2.8
Communication
The communication page displays the parameters of the connected CPU, and
communications statistics. The Parameter tab shows the MAC address of the CPU, the IP
address and IP settings of the CPU, and physical properties. The Statistics tab shows send
and receive communication statistics.
513
Web server
11.2 Standard web pages
The communication page does not vary with the "admin" login.
514
Web server
11.2 Standard web pages
11.2.9
Variable Status
The Variable Status page allows you to view any of the I/O or memory data in your CPU.
You can enter a direct address (such as I0.0), a PLC tag name, or a tag from a specific data
block. For data block tags, you enclose the data block name in double quotation marks. For
each monitor value you can select a display format for the data. You can continue entering
and specifying values until you have as many as you want within the limitations for the page.
The monitor values show up automatically and refresh by default, unless you click the "Off"
icon in the upper right area of the page. When refresh is disabled, you can click "On" to reenable automatic refresh.
With the "admin" log in, you can also modify data values. Enter any values that you wish to
set in the appropriate "Modify Value" field. Click the "Go" button beside a value to write that
value to the CPU. You can also enter multiple values and click "Modify All Values" to write all
of the values to the CPU.
The "Modify Value" functionality is only visible and accessible when you are logged in as the "admin" user.
515
Web server
11.2 Standard web pages
If you leave the Variable Status page and return, the Variable Status page does not retain
your entries. You can bookmark the page and return to the bookmark to see the same
entries. If you do not bookmark the page, you must re-enter the variables.
Note
Be aware of the following issues when using the standard Variable Status page:
The Variable Status page does not allow you to modify a string longer than
198 characters.
When using exponential notation to enter a value for a Real or LReal data type in the
Variable Status page:
To enter a real-number value (Real or LReal) with a positive exponent (such as
+3.402823e+25), enter the value in either of the following formats:
+3.402823e25
+3.402823e+25
To enter real-number value (Real or LReal) with a negative exponent (such as
+3.402823e-25), enter the value as follows:
+3.402823e-25
Be sure that the mantissa portion of the real value in exponential notation includes a
decimal point. Failure to include a decimal point results in the modification of the value
to an unexpected integer value. For example, enter -1.0e8 rather than -1e8.
The Variable Status page supports only 15 digits for an LReal value (regardless of the
location of the decimal point). Entering more than 15 digits creates a rounding error.
Limitations on the Variable Status page:
The maximum number of variable entries per page is 50.
The maximum number of characters for the URL corresponding to the Variable Status
page is 2083. You can see the URL that represents your current variable page in the
address bar of your browser.
For the character display format, the page displays hexadecimal values if the actual CPU
values are not valid ASCII characters as interpreted by the browser.
Note
If a tag name displays special characters such that it is rejected as an entry on the
Variable Status page, you can enclose the tag name in double quotation marks. In most
cases, the Variable Status page will then recognize the tag name.
11.2.10
Data Logs
The Data Logs page allows you to view or download a specified number of data log entries.
With the "admin" log in, you can also clear these entries after downloading them, or you can
delete them. The Web server downloads data logs to your PC in comma-separated values
(CSV) file format.
516
Web server
11.2 Standard web pages
The Data Logs page displays up to 40 data log files. If more than 40 data log files exist, the
Data Logs page shows the first 40 created.
Note
Time stamp for data logs are shown in system time and not in local time
The CPU writes the time stamps for the data log entries in system time (Page 86) and the
standard "Data Logs" page of the Web server displays the time stamps for the data logs in
system time.
The "Download & Clear" option is not available if you are not logged in as the "admin" user.
The "Delete" option is not available if you are not logged in as the "admin" user.
Note
The data log file is in USA/UK comma-separated values format (CSV). To open it in Excel on
non-USA/UK systems, you must import it into Excel with specific settings (Page 561).
517
Web server
11.2 Standard web pages
By default, the number of recent entries to view defaults to 25 entries. You can change this
value in the "Number of recent entries to view" field by entering a number or by using the +
or - button to increment or decrement the value.
Note
The Records parameter of the DataLogCreate (Page 315) instruction defines the maximum
number of entries per data log file.
Additional information
For information on programming with the Data log instructions, see the Data logging
(Page 313) chapter.
518
Web server
11.2 Standard web pages
11.2.11
Update Firmware
The Update Firmware page allows an "admin" user to update the CPU firmware from a file..
Note
You can only update S7-1200 CPUs of version 3.0 and higher with the Update Firmware
feature.
The Web server uses the "https" protocol to perform the firmware update.
The CPU must be in STOP mode to perform a firmware update. If the CPU is not already in
STOP mode, the Web server prompts to transition the CPU to stop mode.
When the CPU is in STOP mode, you can navigate to and select a file from which to load the
firmware version update. Firmware updates are available on the customer support Web site
(http://support.automation.siemens.com). After you have downloaded the appropriate
firmware update from the Web site to your computer, you can browse to and select the file
on your computer for the update.
519
Web server
11.2 Standard web pages
During the update, the Update Firmware page displays a message showing that the update
is in progress. After the update completes, the Update Firmware page displays the order
number and version number of the updated firmware and prompts you to allow a CPU
restart.
520
Web server
11.3 User-defined web pages
11.3
11.3.1
521
Web server
11.3 User-defined web pages
Also be sure to save the file from the editor in UTF-8 character encoding:
You use STEP 7 to compile everything in your HTML pages into STEP 7 data blocks. These
data blocks consist of one control data block that directs the display of the Web pages and
one or more fragment data blocks that contain the compiled Web pages. Be aware that
extensive sets of HTML pages, particularly those with lots of images, require a significant
amount of load memory space (Page 539) for the fragment DBs. If the internal load memory
of your CPU is not sufficient for your user-defined Web pages, use a memory card
(Page 107) to provide external load memory.
To program your HTML code to use data from the S7-1200, you include AWP commands
(Page 522) as HTML comments. When finished, save your HTML pages to your PC and
note the folder path where you save them.
11.3.2
General syntax
Except for the command to read a variable, the AWP commands are of the following syntax:
<!-- AWP_ <command name and parameters> -->
You use the AWP commands in conjunction with typical HTML form commands to write to
variables in the CPU.
522
Web server
11.3 User-defined web pages
The descriptions of the AWP commands in the following pages use the following
conventions:
Items enclosed in brackets [ ] are optional.
Items enclosed in angle brackets < > are parameter values to be specified.
Quotation marks are a literal part of the command. They must be present as indicated.
Special characters in tag or data block names, depending on usage, must be escaped or
enclosed in quotation marks (Page 534).
Use a text editor or HTML editing mode to insert AWP commands into your pages.
11.3.2.1
Reading variables
User-defined Web pages can read variables (PLC tags) from the CPU.
Syntax
:=<Varname>:
523
Web server
11.3 User-defined web pages
Parameters
<Varname>
Examples
The variable to be read, which can be a PLC tag name from your STEP 7 program,
a data block tag, I/O, or addressable memory. For memory or I/O addresses or
alias names (Page 534), do not use quotation marks around the tag name. For
PLC tags, use double quotation marks around the tag name. For data block tags,
enclose the block name only in double quotation marks. The tag name is outside of
the quotation marks. Note that you use the data block name and not a data block
number.
:="Conveyor_speed"::="My_Data_Block".flag1:
:=I0.0:
:=MW100:
Note
Defining alias names for PLC tags and data block tags is described in the topic Using an
alias for a variable reference (Page 529).
If a tag name or data block name includes special characters, you must use additional
quotation marks or escape characters as described in the topic Handling tag names that
contain special characters (Page 534).
11.3.2.2
Writing variables
User-defined pages can write data to the CPU. This is accomplished by using an AWP
command to identify a variable in the CPU to be writable from the HTML page. The variable
must be specified by PLC tag name or data block tag name. You can declare multiple
variable names in one statement. To write the data to the CPU, you use standard HTTP
POST commands.
A typical usage is to design a form in your HTML page with text input fields or select list
choices that correspond to writable CPU variables. As with all user-defiined pages, you then
generate the blocks from STEP 7 such that they are included in your STEP 7 program.
When an admin user subsequently accesses this page and types data into the input fields or
selects a choice from a select list, the Web server converts the input to the appropriate data
type for the variable, and writes the value to the variable in the CPU. Note that the name
clause for HTML input fields and HTML select lists uses syntax typical for the name clause of
the AWP_In_Variable command. Typically enclose the name in single quotation marks and if
you reference a data block, enclose the data block name in double quotation marks.
For form management details, refer to documentation for HTML.
524
Web server
11.3 User-defined web pages
Syntax
Parameters
<Varname1>
<Varname2>
For both Name clauses and Use clauses, the complete name must be enclosed in single
quotation marks. Within the single quotes, use double quotation marks around a PLC tag
and double quotation marks around a data block name. The data block name is within the
double quotes but not the data block tag name. Note that for data block tags, you use the
name of the block and not a data block number.
525
Web server
11.3 User-defined web pages
Note
Only an admin user can write data to the CPU. The commands are ignored if the user has
not logged in as the admin user.
If a tag name or data block name includes special characters, you must use additional
quotation marks or escape characters as described in the topic "Handling tag names that
contain special characters (Page 534)".
11.3.2.3
Syntax
Parameters
<Type>
<Name>
Refer to HTTP documentation for a list of all the names of HEADER variables. A
few examples are listed below:
Status: response code
Location: path for redirection
Retry-After: how long service is expected to be unavailable to the requesting client
For types COOKIE_VALUE and COOKIE_EXPIRES, <Name> is the name of a
specific cookie.
COOKIE_VALUE:name: value of the named cookie
COOKIE_EXPIRES:name: expiration time in seconds of named cookie
The Name clause must be enclosed in single or double quotation marks.
If no Use clause is specified, the special variable name corresponds to a PLC tag
name. Enclose the complete Name clause within single quotation marks and the
PLC tag in double quotation marks. The special variable name and PLC tag name
must match exactly.
<Varname>
Name of the PLC tag or data block tag for the variable to be read into
The Varname must be enclosed in single quotation marks. Within the single
quotes, use double quotation marks around a PLC tag or data block name. The
data block name is within the double quotes but not the data block tag name. Note
that for data block tags, you use the name of the block and not a data block
number.
526
Web server
11.3 User-defined web pages
Examples
11.3.2.4
Syntax
527
Web server
11.3 User-defined web pages
Parameters
<Type>
<Name>
Specific variable within the types defined above, as shown in these examples:
HEADER:Accept: content types that are acceptable
HEADER:User-Agent: information about the user agent originating the request.
SERVER:current_user_id: id of the current user; 0 if no user logged in
SERVER:current_user_name: name of the current user
COOKIE_VALUE:<name>: value of the named cookie
Enclose the Name clause in single quotation marks.
If no Use clause is specified, the special variable name corresponds to a PLC
variable name. Enclose the complete Name clause within single quotation marks
and the PLC tag in double quotation marks. The special variable name must match
the PLC tag name exactly.
Refer to HTTP documentation for a list of all the names of HEADER variables.
<Varname>
The variable name in your STEP 7 program into which you want to write the special
variable, which can be a PLC tag name, or a data block tag.
The Varname must be enclosed in single quotation marks. Within the single
quotes, use double quotation marks around a PLC tag or data block name. The
data block name is within the double quotes but not the data block tag name. Note
that for data block tags, you use the name of the block and not a data block
number.
Examples
Note
Only an admin user can write data to the CPU. The commands are ignored if the user has
not logged in as the admin user.
If a tag name or data block name includes special characters, you must use additional
quotation marks or escape characters as described in the topic "Handling tag names that
contain special characters (Page 534)".
528
Web server
11.3 User-defined web pages
11.3.2.5
Syntax
Parameters
Examples
<Varname1>
<Varname2>
Name of the PLC variable for which you want to assign an alias name. The variable
can be a PLC tag, a data block tag, or a special variable. Varname2 must be
enclosed in single quotation marks. Within the single quotes, use double quotation
marks around a PLC tag, special variable, or data block name. The data block
name is within the double quotes but not the data block tag name. Note that for
data block tags, you use the name of the block and not a data block number.
11.3.2.6
Syntax
529
Web server
11.3 User-defined web pages
Parameters
<Enum type
name>
<Value>
<constant>:<name>
The constant indicates the numerical value for the enum type assignment. The total
number is unbounded.
The name is the value assigned to the enum element.
Note that the entire string of enum value assignments is enclosed in single quotation marks,
and each individual enum type element assignment is enclosed in double quotation marks.
The scope of an enum type definition is global for the user-defined Web pages. If you have
set up your user-defined Web pages in language folders (Page 551), the enum type
definition is global for all pages in the language folder.
Example
11.3.2.7
Syntax
Parameters
<Varname>
Name of PLC tag or data block tag to associate with the enum type, or the name of
the alias name for a PLC tag (Page 529) if declared.
Varname must be enclosed in single quotation marks. Within the single quotes, use
double quotation marks around a PLC tag or data block name. Note that for data
block tags, you use the name of the block and not a data block number. The data
block name is within the double quotes but not the data block tag name.
<EnumType>
Example declaration
530
Web server
11.3 User-defined web pages
Because the enum type defintion (Page 529) assigns "Tank is full" to the numerical value 1,
the value 1 is written to the PLC tag named "Alarm" in the CPU.
Note that the Name clause in the AWP_In_Variable declaration must correspond exactly to
the Name clause in the AWP_Enum_Ref declaration.
Because the enum type defintion (Page 529) assigns "Tank is full" to the numerical value 1,
the value 1 is written to the alias "Alarm" which corresponds to the PLC tag named
"Motor1.Alarm" in data block "Data_Block_4" in the CPU.
If a tag name or data block name includes special characters, you must use additional
quotation marks or escape characters as described in the topic Handling tag names that
contain special characters (Page 534).
531
Web server
11.3 User-defined web pages
11.3.2.8
Creating fragments
STEP 7 converts and stores user-defined Web pages as a control DB and fragment DBs
when you click "Generate blocks" in the CPU Properties for the Web server. You can set up
specific fragments for specific pages or for sections of specific pages. You can identify these
fragments by a name and number with the "Start_Fragment" AWP command. Everything in
the page following the AWP_Start_Fragment command belongs to that fragment until
another AWP_Start_Command is issued or until end of file is reached.
Syntax
Parameters
<Name>
<Type>
"manual" or "automatic"
manual: The STEP 7 program must request this fragment and can respond
accordingly. Operation of the fragment must be controlled with STEP 7 and the
control DB variables.
automatic: The Web server processes the fragment automatically.
If you do not specify the type parameter, the default is "automatic".
<id>
<Mode>
Integer identification number. If you do not specify the ID parameter, the Web
server assigns a number by default. For manual fragments, set the ID to a low
number. The ID is the means by which the STEP 7 program controls a manual
fragment.
"visible" or "hidden"
visible: Contents of the fragment will display on the user-defined Web page.
hidden: Contents of the fragment will not display on the user-defined Web page.
If you do not specify the type parameter, the default is "visible".
Manual fragments
If you create a manual fragment for a user-defined Web page or portion of a page, then your
STEP 7 program must control when the fragment is sent. The STEP 7 program must set
appropriate parameters in the control DB for a user-defined page under manual control and
then call the WWW instruction with the control DB as modified. For understanding the
structure of the control DB and how to manipulate individual pages and fragments, see the
topic Advanced user-defined Web page control (Page 555).
532
Web server
11.3 User-defined web pages
11.3.2.9
Importing fragments
You can create a named fragment from a portion of your HTML code and then import that
fragment elsewhere in your set of user-defined Web pages. For example, consider a set of
user-defined Web pages that has a start page and then several other HTML pages
accessible from links on the start page. Suppose each of the separate pages is to display the
company logo on the page. You could implement this by creating a fragment (Page 532) that
loads the image of the company logo. Each individual HTML page could then import this
fragment to display the company logo. You use the AWP Import_Fragment command for this
purpose. The HTML code for the fragment only exists in one fragment, but you can import
this fragment DB as many times as necessary in as many Web pages as you choose.
Syntax
Parameters
<Name>
Example
Excerpt from HTML code that creates a fragment to display an image:
<!-- AWP_Start_Fragment Name='My_company_logo' --><p><img
src="company_logo.jpg"></p>
Excerpt from HTML code in another .html file that imports the fragment that displays the logo
image:
<!-- AWP_Import_Fragment Name='My_company_logo' -->
Both .html files (the one that creates the fragment and the one that imports it) are in the
folder structure that you define when you configure the user-defined pages in STEP 7
(Page 535).
11.3.2.10
Combining definitions
When declaring variables for use in your user-defined Web pages, you can combine a
variable declaration and an alias for the variable (Page 529). You can also declare multiple
In_Variables in one statement and multiple Out_Variables in one statement.
Examples
533
Web server
11.3 User-defined web pages
11.3.2.11
Reading variables
You use the following syntax to read a variable (Page 523):
:=<Varname>:
The following rules apply to reading variables:
For variable names from the PLC tag table, enclose the tag name in double quotation
marks.
For variable names that are data block tags, enclose the data block name in double
quotation marks. The tag is outside of the quotation marks.
For variable names that are direct I/O addresses, memory addresses, or alias names, do
not use quotation marks around the read variable.
For tag names or data block tag names that contain a backslash, precede the backslash
with another backslash.
If a tag name or data block tag name contains a colon, less than sign, greater than sign,
or ampersand define an alias that has no special characters for the read variable, and
read the variable using the alias. Precede colons in tag names in a Use clause with a
backslash.
Table 11- 1
Tag name
n/a
ABC:DEF
n/a
T\
n/a
A \B 'C :D
n/a
a<b
Data_block_1
Tag_1
Data_block_1
ABC:DEF
DB A' B C D$ E
Tag
DB:DB
Tag:Tag
Read command
<!--AWP_Out_Variable Name='special_tag'
Use ='"ABC:DEF"' -->
:=special_tag:
:="T\\":
<!--AWP_Out_Variable
Name='another_special_tag' Use='"A \\B \'C
:D"' -->
:=another_special_tag:
<!--AWP_Out_Variable Name='a_less_than_b'
Use='"a<b"' -->
:=a_less_than_b:
:="Data_block_1".Tag_1:
<!-- AWP_Out_Variable Name='special_tag'
Use='"Data_block_1".ABC\:DEF'-->
:=special_tag:
:="DB A' B C D$ E".Tag:
<!--AWP_Out_Variable Name='my_tag' Use
='"DB:DB".Tag\:Tag' -->
:=my_tag:
534
Web server
11.3 User-defined web pages
Tag name
n/a
ABC'DEF
n/a
A \B 'C :D
Data_block_1
Tag_1
Name='"Data_block_1".Tag_1'
Data_block_1
ABC'DEF
Name='"Data_block_1".ABC\'DEF'
Data_block_1
A \B 'C :D
DB A' B C D$ E
Tag
11.3.3
535
Web server
11.3 User-defined web pages
2. Display the "Web server" properties in the inspector window for the CPU.
3. If not already selected, select the check box for "Enable Web server".
4. Select the check box for "Permit access only with HTTPS" to ensure that the Web server
uses encrypted communication and to increase the security of your Web-accessible CPU.
5. Enter or browse to the folder name on your PC where you saved the HTML default page
(start page).
6. Enter the name of the default page.
7. Provide a name for your application (optional). The application name is used to further
subcategorize or group web pages. When an application name exists, the URL will
appear in the following format: http://ww.xx.yy.zz/awp/<application
name>/<pagename>.html.
8. Specify filename extensions to be examined for the presence of AWP commands. By
default, STEP 7 analyzes files with .htm, .html, or .js extensions. If you have additional file
extensions, append them.
9. Keep the default for the Web DB number, or enter a number of your choice. This is the
DB number of the control DB that controls display of the Web pages.
10.Keep the default for the fragment DB start number, or enter a number of your choice. This
is the first of the fragment DBs that contains the Web pages.
536
Web server
11.3 User-defined web pages
11.3.4
WWW instruction
LAD / FBD
SCL
ret_val := WWW(
ctrl_db:=_uint_in_);
Description
Provides access to user-defined Web pages
from standard Web pages
537
Web server
11.3 User-defined web pages
You must provide the control data block input parameter (CTRL_DB) which corresponds to
the integer DB number of the control DB. You can find this control DB block number (called
Web DB Number) in the Web Server properties of the CPU after you create the blocks for
the user-defined Web pages. Enter the integer DB number as the CTRL_DB parameter of
the WWW instruction. The return value (RET_VAL) contains the function result. Note that the
WWW instruction executes asynchronously and that the RET_VAL output might have an
initial value of 0 although an error can occur later. The program can check the state of the
control DB to ensure that the application started successfully, or check RET_VAL with a
subsequent call to WWW.
Table 11- 4
Return value
RET_VAL
Description
No error
16#00yx
16#803a
16#8081
16#80C1
11.3.5
538
Web server
11.3 User-defined web pages
11.3.6
11.3.7
539
Web server
11.3 User-defined web pages
You can check the amount of load memory space that is used and the amount that is
available from the Online and Diagnostic tools in STEP 7. You can also look at the properties
for the individual blocks that STEP 7 generates from your user-defined Web pages and see
the load memory consumption.
Note
If you need to reduce the space required for your user-defined Web pages, reduce your use
of images if applicable.
11.3.8
11.3.8.1
Note
This example page is in English, but you can, of course, use any language when you are
developing your own HTML pages.
540
Web server
11.3 User-defined web pages
Description
In this application, each wind turbine in a wind turbine farm is equipped with an S7-1200 for
control of the turbine. Within the STEP 7 program, each wind turbine has a data block with
data specific to that wind turbine and location.
The user-defined Web page provides remote turbine access from a PC. A user can connect
to standard web pages of the CPU of a particular wind turbine and access the user-defined
"Remote Wind Turbine Monitor" Web page to see the data for that turbine. An admin user
can also put the turbine in manual mode and control the variables for turbine speed, yaw,
and pitch from the Web page. An admin user can also set a braking value regardless of
whether the turbine is under manual or automatic control.
The STEP 7 program would check the Boolean values for overriding automatic control, and if
set, would use the user-entered values for turbine speed, yaw, and pitch. Otherwise, the
program would ignore these values.
Files used
This user-defined Web page example consists of three files:
Wind_turbine.html: This is the HTML page that implements the display shown above,
using AWP commands to access controller data.
Wind_turbine.css: This is the cascading style sheet that contains formatting styles for the
HTML page. Use of a cascading style sheet is optional, but it can simplify the HTML page
development.
Wind_turbine.jpg: This is the background image that the HTML page uses. Use of images
in user-defined Web pages is, of course, optional, and does require additional space in
the CPU.
These files are not provided with your installation, but are described as an example.
Implementation
The HTML page uses AWP commands to read values from the PLC (Page 523) for the
display fields and to write values to the PLC (Page 524) for data coming from user input.
This page also uses AWP commands for enum type definition (Page 529) and reference
(Page 530) for handling ON/OFF settings.
The first part of the page displays a header line that includes the wind turbine number and
the location.
541
Web server
11.3 User-defined web pages
The following sections allow for manual control of the turbine, overriding the normal
automatic control by the S7-1200. These types are as follows:
Manual override: enables manual override
of the turbine. The STEP 7 user program
requires that the manual override setting be
true before enabling the use of any of the
manual settings for turbine speed, or yaw or
pitch.
Yaw override: enables manual override of
the yaw setting, and a manual setting for the
yaw. The STEP 7 user program requires
that both manual override and yaw override
be true in order to apply the yaw setting.
Pitch override: enables manual override of
the pitch of the blades. The STEP 7 user
program requires that both manual override
and pitch override be true in order to apply
the blade pitch setting.
The HTML page includes a submit button to
post the override settings to the controller.
The braking user input field provides a manual
setting for a braking percentage. The STEP 7
user program does not require manual override
to accept a braking value.
In addition, the HTML page uses an AWP command to write the special variable (Page 527)
that contains the user ID of the user that is accessing the page to a tag in the PLC tag table.
11.3.8.2
542
Web server
11.3 User-defined web pages
<tr style="height:2%;">
<td>
<p>Power output:</p>
</td>
<td>
<p style="margin-bottom:5px;"> :="Data_block_1".PowerOutput: KW</p>
</td>
</tr>
11.3.8.3
543
Web server
11.3 User-defined web pages
<select name='"Data_block_1".ManualOverrideEnable'>
<option value=':"Data_block_1".ManualOverrideEnable:'> </option>
<option value="On">Yes</option>
<option selected value="Off">No</option>
</select>
The select list is included within a form on the HTML page. When the user clicks the submit
button, the page posts the form, which writes a value of "1" to the Boolean
ManualOverrideEnable in Data_block_1 if the user had selected "Yes", or "0" if the user had
selected "No".
11.3.8.4
544
Web server
11.3 User-defined web pages
Note
Note that if a user-defined page has a data entry field for a writable data block tag that is a
string data type, the user must enclose the string in single quotation marks when entering
the string value in the field.
Note
Note that if you declare an entire data block in an AWP_In_Variable declaration such as <!-AWP_In_Variable Name='"Data_block_1"' -->, then every tag within that data block can be
written from the user-defined Web page. Use this when you intend for all of the tags in a data
block to be writable. Otherwise, if you only want specific data block tags to be writable from
the user-defined Web page, declare it specifically with a declaration such as <!-AWP_In_Variable Name='"Data_block_1".Braking' -->
11.3.8.5
11.3.8.6
Wind_turbine.html
545
Web server
11.3 User-defined web pages
Location: String
TurbineNumber: Int
WindSpeed: Real
WindDirection: Real
Temperature: Real
PowerOutput: Real
ManualOverrideEnable: Bool
TurbineSpeed: Real
YawOverride: Bool
Yaw: Real
PitchOverride: Bool
Pitch: Real
Braking: Real
The user-defined Web page displays current values for the PLC data,
and provides a select list to set the three booleans using an
enumerated type assignment. The "Submit" button posts the selected
boolean values as well as the data entry fields for TurbineSpeed,
Yaw, and Pitch. The value for Braking can be set without use of the
"Submit" button.
No actual STEP 7 program is required to use this page.
Theoretically, the STEP 7 program would only act on the values of
TurbineSpeed, Yaw, and Pitch, if the associated booleans were set.
The only STEP 7 requirement is to call the WWW instruction with the
DB number of the generated data blocks for this page.
-->
<!-- AWP_In_Variable Name='"Data_block_1"' -->
<!-- AWP_In_Variable Name='"Data_block_1".ManualOverrideEnable' -->
<!-- AWP_In_Variable Name='"Data_block_1".PitchOverride' -->
<!-- AWP_In_Variable Name='"Data_block_1".YawOverride' -->
<!-- AWP_In_Variable Name="SERVER:current_user_id" Use="User_ID"-->
<!-- AWP_Enum_Def Name="OverrideStatus" Values='0:"Off",1:"On"' -->
<!-- AWP_Enum_Ref Name='"Data_block_1".ManualOverrideEnable'
Enum="OverrideStatus" -->
<!-- AWP_Enum_Ref Name='"Data_block_1".PitchOverride'
Enum="OverrideStatus" -->
<!-- AWP_Enum_Ref Name='"Data_block_1".YawOverride'
Enum="OverrideStatus" -->
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf8"><link rel="stylesheet" href="Wind_turbine.css">
<title>Remote Wind Turbine Monitor</title>
</head>
<body>
<table style="background-image: url('./Wind_turbine.jpg'); width:
904px; height: 534px;" cellpadding="0" cellspacing="2"><tr
style="height: 2%;"><td colspan="2">
<h2>Remote Wind Turbine Monitor: Turbine
#:="Data_block_1".TurbineNumber: :="Data_block_1".Location:</h2>
</td>
546
Web server
11.3 User-defined web pages
<tr style="height: 2%;"><td style="width: 24%;"><p>Wind
speed:</p></td>
<td><p> :="Data_block_1".WindSpeed: km/h</p></td>
</tr>
<tr style="height: 2%;">
<td style="width: 24%;"><p>Wind direction:</p></td>
<td><p> :="Data_block_1".WindDirection: deg.</p></td>
</tr>
<tr style="height: 2%;"><td style="width:
24%;"><p>Temperature:</p></td>
<td><p> :="Data_block_1".Temperature: deg. C</p></td>
</tr>
<tr style="height: 2%;">
<td style="width: 24%;"><p>Power output:</p></td>
<td><p style="margin-bottom:5px;"> :="Data_block_1".PowerOutput:
KW</p>
</td>
</tr>
<form method="POST" action="">
<tr style="height: 2%;" >
<td style="width=24%; border-top-style: Solid; border-top-width:
2px; border-top-color: #ffffff;">
<p>Manual override: :="Data_block_1".ManualOverrideEnable:</p>
</td>
<td class="Text">Set:
<select name='"Data_block_1".ManualOverrideEnable'>
<option value=':="Data_block_1".ManualOverrideEnable:'> </option>
<option value="On">Yes</option>
<option value="Off">No</option>
</select>
</td>
</tr>
<tr style="vertical-align: top; height: 2%;"><td style="width:
24%;"><p>Turbine speed:</p></td>
<td>
<p style="margin-bottom:5px;"><input
name='"Data_block_1".TurbineSpeed' size="10"
value=':="Data_block_1".TurbineSpeed:' type="text"> RPM</p>
</td>
</tr>
<tr style="vertical-align: top; height: 2%;">
<td style="width: 24%;">
<p>Yaw override: :="Data_block_1".YawOverride: </p>
</td>
<td class="Text">Set:
<select name='"Data_block_1".YawOverride'>
547
Web server
11.3 User-defined web pages
<option value=':="Data_block_1".YawOverride:'> </option>
<option value="On">Yes</option>
<option value="Off">No</option>
</select>
</td>
</tr>
<tr style="vertical-align: top; height: 2%;">
<td style="width: 24%;">
<p>Turbine yaw:</p>
</td>
<td>
<p style="margin-bottom:5px;"><input name='"Data_block_1".Yaw'
size="10" value=':="Data_block_1".Yaw:' type="text"> deg.</p>
</td>
</tr>
<tr style="vertical-align: top; height: 2%;">
<td style="width: 24%;">
<p>Pitch override: :="Data_block_1".PitchOverride: </p>
</td>
<td class="Text">Set:
<select name='"Data_block_1".PitchOverride'>
<option value=':="Data_block_1".PitchOverride:'> </option>
<option value="On">Yes</option>
<option value="Off">No</option>
</select>
</td>
</tr>
<tr style="vertical-align: top; height: 2%;">
<td style="width=24%; border-bottom-style: Solid; border-bottomwidth: 2px; border-bottom-color: #ffffff;">
<p>Blade pitch:</p>
</td>
<td>
<p style="margin-bottom:5px;"><input name='"Data_block_1".Pitch'
size="10" value=':="Data_block_1".Pitch:' type="text"> deg.</p>
</td>
</tr>
<tr style="height: 2%;">
<td colspan="2"><br>
<input type="submit" value="Submit override settings and values">
</td>
</tr>
</form>
<tr style="vertical-align: top; height: 2%;">
<td style="width: 24%;"><p>Braking:</p></td>
<td>
<form method="POST" action="">
548
Web server
11.3 User-defined web pages
<p> <input name='"Data_block_1".Braking' size="10"
value=':="Data_block_1".Braking:' type="text"> %</p>
</form>
</td>
</tr>
<tr><td></td></tr>
</table>
</body>
</html>
Wind_turbine.css
11.3.8.7
H2 {
font-family: Arial;
font-weight: bold;
font-size: 14.0pt;
color: #FFFFFF;
margin-top:0px;
margin-bottom:10px;
}
P {
font-family: Arial;
font-weight: bold;
color: #FFFFFF;
font-size: 12.0pt;
margin-top:0px;
margin-bottom:0px;
}
TD.Text {
font-family: Arial;
font-weight: bold;
color: #FFFFFF;
font-size: 12.0pt;
margin-top:0px;
margin-bottom:0px;
}
549
Web server
11.3 User-defined web pages
Configuration fields
HTML directory: This field specifies the fully-qualified pathname to the folder where the
default page (home page or start page) is located on the computer. The "..." button allows
you to browse to the folder that you need.
Default HTML page: This field specifies the filename of the default page or home page of
the HTML application. The "..." button allows you to select the file that you need. For this
example, WindTurbine.html is the default HTML page. The Remote Wind Turbine Monitor
example only consists of a single page, but in other user-defined applications the default
page can call up additional pages from links on the default page. Within the HTML code,
the default page must reference other pages relative to the HTML source folder.
Application name: This optional field contains the name that the Web browser includes in
the address field when displaying the page. For this example, it is "Remote Wind Turbine
Monitor", but it can be any name.
No other fields require configuration.
550
Web server
11.3 User-defined web pages
Final steps
To use the Remote Wind Turbine Monitor as configured, generate the blocks, program the
WWW instruction (Page 537) with the number of the generated control DB as an input
parameter, download the program blocks, and put the CPU in run mode.
When an operator subsequently accesses the standard Web pages for the S7-1200 that
controls the wind turbine, the "Remote Wind Turbine Monitor" Web page is accessible from
the "User Pages" link on the navigation bar. This page now provides the means to monitor
and control the wind turbine.
11.3.9
11.3.9.1
de: German
en: English
es: Spanish
fr: French
it: Italian
zh: Chinese
At the same level, you can also include any other folders that your pages need, for example,
folders for images or scripts.
You can include any subset of the language folders. You do not have to include all six
languages. Within the language folders, you create and program your HTML pages in the
appropriate language.
551
Web server
11.3 User-defined web pages
11.3.9.2
Example
The following example uses a default HTML page named "langswitch.html" in each of the
language folders. Also in the HTML directory is a folder named "script". The script folder
includes a JavaScript file named "lang.js". Each langswitch.html page uses this JavaScript to
set the language cookie, "siemens_automation_language".
552
Web server
11.3 User-defined web pages
553
Web server
11.3 User-defined web pages
function DoLocalLanguageChange(oSelect) {
SetLangCookie(oSelect.value);
top.window.location.reload();
}
function SetLangCookie(value) {
var strval = "siemens_automation_language=";
// This is the cookie by which the Web server
// detects the desired language
// This name is required by the Web server.
strval = strval + value;
strval = strval + "; path=/ ;";
// Set path to the application, since otherwise
// path would be set to the requesting page
// and this page would not get the cookie.
/* OPTIONAL
use expiration if this cookie should live longer
than the current browser session:
var now = new Date();
var endttime = new Date(now.getTime() + expiration);
strval = strval + "; expires=" +
endttime.toGMTString() + ";";
*/
document.cookie = strval;
}
11.3.9.3
554
Web server
11.3 User-defined web pages
11.3.10
Commandstate structure
"Commandstate" is a structure that contains global commands and global states for the Web
server.
Global commands in the "Commandstate" structure
The global commands apply to the Web server in general. You can deactivate the Web
server or restart it from the control DB parameters.
Block tag
Data type
Description
init
BOOL
deactivate
BOOL
Data type
Description
initializing
BOOL
error
BOOL
deactivating
BOOL
deactivated
BOOL
initialized
BOOL
Request table
The request table is an array of structures containing commands and states that apply to
individual fragment DBs. If you created fragments with the AWP_Start_Fragment (Page 532)
command of type "manual", the STEP 7 user program must control these pages through the
control DB. The request states are read-only and provide information about the current
fragment. You use the request commands to control the current fragment.
555
Web server
11.3 User-defined web pages
Block tag
Data type
Description
requesttab
ARRAY [ 1 .. 4 ] OF STRUCT
Block tag
Data type
Description
page_index
UINT
fragment_index
UINT
continue
BOOL
repeat
BOOL
abort
BOOL
finish
BOOL
Send this fragment; page is complete do not process any additional fragments
// Request Commands
// Request states
idle
BOOL
waiting
BOOL
sending
BOOL
Fragment is sending
aborting
BOOL
Operation
Whenever your program makes changes to the control DB, it must call the WWW instruction
with the number of the modified control DB as its parameter. The global commands and
request commands take effect when the STEP 7 user program executes the WWW
instruction (Page 537).
The STEP 7 user program can set the fragment_index explicitly, thus causing the Web
server to process the specified fragment with a request command. Otherwise, the Web
server processes the current fragment for the current page when the WWW instruction
executes.
556
Web server
11.3 User-defined web pages
Possible techniques for using the fragment_index include:
Processing the current fragment: Leave fragment_index unchanged and set the continue
command.
Skip the current fragment: Set fragment_index to 0 and set the continue command.
Replace current fragment with a different fragment: Set the fragment_index to the new
fragment ID and set the continue command.
To check global states or request states that might be changing, the STEP 7 user program
must call the WWW instruction to evaluate the current values of these states. A typical usage
might be to call the WWW instruction periodically until a specific state occurs.
Note
If the STEP 7 user program sets more than one request command, the WWW instructions
processes only one in this of precedence: abort, finish, repeat, continue. The WWW
instruction clears all of the request commands after processing.
Examples
The following example shows a STEP 7 user program that is checking for a fragment with an
ID of 1 to be in the waiting state, following a prior call to the WWW instruction. It might also
wait for other application-specific conditions to occur. Then it performs whatever processing
is necessary for the fragment, such as setting data block tags, performing calculations, or
other application-specific tasks. Afterwards, it sets the continue flag so that the Web server
will execute this fragment.
When the program calls the WWW instruction with this modified control DB, the user-defined
Web page with this fragment can be displayed from the Web browser.
Note that this is a simplified example; the fragment to check could be in any one of the four
requesttab structs in the array.
557
Web server
11.4 Constraints
11.4
Constraints
The following IT considerations can affect your use of the Web server:
Typically, you must use the IP address of the CPU to access the standard Web pages or
user-defined Web pages. If your Web browser does not allow connecting directly to an IP
address, see your IT administrator. If your local policies support DNS, you can connect to
the IP address through a DNS entry to that address.
Firewalls, proxy settings, and other site-specific restrictions can also restrict access to the
CPU. See your IT administrator to resolve these issues.
The standard Web pages use JavaScripts and cookies. If JavaScripts or cookies are
disabled in your Web browser, enable them. If you cannot enable them, some features
will be restricted (Page 558). Use of JavaScripts and cookies in user-defined Web pages
is optional. If used, they must be enabled in your browser.
Secure Sockets Layer (SSL) is supported by the Web server. You can access the
standard Web pages and user-defined Web pages with an URL of either
http://ww.xx.yy.zz or https://ww.xx.yy.zz, where "ww.xx.yy.zz" represents the IP address
of the CPU.
Siemens provides a security certificate for secure access to the Web server. From the
Introduction standard Web page (Page 508), you can download and import the certificate
into the Internet options of your Web browser (Page 560). If you choose to not import the
certificate, you will get a security verification prompt every time you access the Web
server with https://.
Number of connections
The Web server supports a maximum of 30 active HTTP connections. These 30 connections
can be consumed in various ways, depending on the Web browser that you use and the
number of different objects per page (.css files, images, additional .html files). Some
connections persist while the page is being displayed; others are released after the initial
connection.
If, for example, you are using Mozilla Firefox 8, which supports a maximum of six persistent
connections, you could use five browser or browser tab instances before the Web server
starts dropping connections. In the case where a page is not using all six connections, you
could have additional browser or browser tab instances.
Also be aware that page performance can be affected by the number of active connections.
11.4.1
558
Web server
11.4 Constraints
General
The pages do not update dynamically. You must manually refresh the page with the Refresh
icon (Page 506) to view fresh data.
559
Web server
11.4 Constraints
11.4.2
11.4.3
560
Web server
11.4 Constraints
Other browsers
Follow the conventions of your Web browser to import and install the Siemens certificate.
After you have installed the Siemens security certificate "S7-Controller Family" in the Internet
options for your Web browser content, you will not be required to verify a security prompt
when you access the Web server with https:// ww.xx.yy.zz.
11.4.4
561
Web server
11.4 Constraints
8. From the Step 3 dialog, you can optionally change the Date format from MDY
(month/day/year) to another format.
9. Complete the remaining steps of the Text Import Wizard to import the file.
562
Communication processor
12.1
12
LED indicators
The communication modules have three LED indicators:
Diagnostic LED (DIAG): This LED flashes red until it is addressed by the CPU. After the
CPU powers up, it checks for CMs and addresses them. The diagnostic LED begins to
flash green. This means that the CPU has addressed the CM, but has not yet provided
the configuration to it. The CPU downloads the configuration to the configured CMs when
the program is downloaded to the CPU. After a download to the CPU, the diagnostic LED
on the communication module should be a steady green.
Transmit LED (Tx): The transmit LED illuminates when data is being transmitted out the
communication port.
Receive LED (Rx): This LED illuminates when data is being received by the
communication port.
The communication board provides transmit (TxD) and receive (RxD) LEDs. It has no
diagnostic LED.
563
Communication processor
12.2 Biasing and terminating an RS485 network connector
12.2
2Q
2II
A1 B1 A2 B2
2Q
A1 B1 A2 B2
A1 B1 A2 B2
Table 12- 1
7['5['
7['5['
7['5['
7['5['
7['5['
$
%
$
%
7['5['
%
$
Pin number
Network connector
Cable shield
The CB 1241 provides internal resistors for terminating and biasing the network. To
terminate and bias the connection, connect TRA to TA and connect TRB to TB to include the
internal resistors to the circuit. CB 1241 does not have a 9-pin connector. The following table
shows the connections to a 9-pin connector on the communications partner.
564
Communication processor
12.3 Point-to-Point (PtP) communication
Table 12- 2
7$
75$
75%
$
%
7%
0
7$
75$
75%
7%
12.3
565
Communication processor
12.3 Point-to-Point (PtP) communication
12.3.1
Point-to-Point instructions
12.3.1.1
Table 12- 3
Parameter
Description
REQ
Many of the PtP instructions use the REQ input to initiate the operation on a low to high
transition. The REQ input must be high (TRUE) for one execution of an instruction, but the REQ
input can remain TRUE for as long as desired. The instruction does not initiate another operation
until it has been called with the REQ input FALSE so that the instruction can reset the history
state of the REQ input. This is required so that the instruction can detect the low to high transition
to initiate the next operation.
When you place a PtP instruction in your program, STEP 7 prompts you to identify the instance
DB. Use a unique DB for each PtP instruction call. This ensures that each instruction properly
handles inputs such as REQ.
PORT
Several parameters are specified in a number of bit times at the configured baud rate. Specifying
the parameter in bit times allows the parameter to be independent of baud rate. All parameters
that are in units of bit times can be specified to a maximum number of 65535. However, the
maximum amount of time that a CM or CB can measure is eight seconds.
The DONE, NDR, ERROR, and STATUS output parameters of the PtP instructions provide
execution completion status for the PtP operations.
Table 12- 4
Parameter
Data type
Default
Description
DONE
Bool
FALSE
Set TRUE for one execution to indicate that the last request
completed without errors; otherwise, FALSE.
NDR
Bool
FALSE
Set TRUE for one execution to indicate that the requested action
has completed without error and that the new data has been
received; otherwise, FALSE.
ERROR
Bool
FALSE
Set TRUE for one execution to indicate that the last request
completed with errors, with the applicable error code in STATUS;
otherwise, FALSE.
STATUS
Word
Result status:
If none of the above bits are set, then the instruction returns
status results that describe the current state of the function.
STATUS retains its value for the duration of the execution of the
function.
566
Communication processor
12.3 Point-to-Point (PtP) communication
Note
The DONE, NDR, and ERROR parameters are set for one execution only. Your program
logic must save temporary output state values in data latches, so you can detect state
changes in subsequent program scans.
Table 12- 5
STATUS (W#16#....)
Description
0000
No error
7000
7001
7002
Function is busy with subsequent calls (polls after the first call).
8x3A
8070
All internal instance memory in use, too many concurrent instructions in progress
8080
8081
8082
8083
Buffer overflow:
The CM or CB returned a received message with a length greater than the length parameter
allowed.
Table 12- 6
8090
8091
8092
Class description
Error classes
Description
Port configuration
80Ax
Transmit configuration
80Bx
Receive configuration
80Cx
Transmission runtime
80Dx
Reception runtime
80Ex
Signal handling
80Fx
567
Communication processor
12.3 Point-to-Point (PtP) communication
12.3.1.2
Table 12- 7
PORT_CFG instruction
PORT_CFG (Port Configuration) instruction
LAD / FBD
SCL
Description
"PORT_CFG_DB"(
REQ:=_bool_in_,
PORT:=_uint_in_,
PROTOCOL:=_uint_in_,
BAUD:=_uint_in_,
PARITY:=_uint_in_,
DATABITS:=_uint_in_,
STOPBITS:=_uint_in_,
FLOWCTRL:=_uint_in_,
XONCHAR:=_char_in_,
XOFFCHAR:=_char_in_,
WAITTIME:=_uint_in_,
DONE=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_);
The PORT_CFG configuration changes are not permanently stored in the CPU. The
parameters configured in the device configuration are restored when the CPU transitions
from RUN to STOP mode and after a power cycle. See Configuring the communication ports
(Page 583) and Managing flow control (Page 585) for more information.
Table 12- 8
Data type
Description
REQ
IN
Bool
Activate the configuration change on rising edge of this input. (Default value:
False)
PORT
IN
PORT
PROTOCOL
IN
UInt
BAUD
IN
UInt
PARITY
IN
UInt
DATABITS
IN
UInt
STOPBITS
IN
UInt
568
Communication processor
12.3 Point-to-Point (PtP) communication
Data type
Description
FLOWCTRL
IN
UInt
XONCHAR
IN
Char
Specifies the character that is used as the XON character. This is typically a
DC1 character (11H). This parameter is only evaluated if flow control is
enabled. (Default value: 0)
XOFFCHAR
IN
Char
Specifies the character that is used as the XOFF character. This is typically
a DC3 character (13H). This parameter is only evaluated if flow control is
enabled. (Default value: 0)
XWAITIME
IN
UInt
Specifies how long to wait for a XON character after receiving a XOFF
character, or how long to wait for the CTS signal after enabling RTS (0 to
65535 ms). This parameter is only evaluated if flow control is enabled.
(Default value: 2000)
DONE
OUT
Bool
TRUE for one execution after the last request was completed with no error
ERROR
OUT
Bool
TRUE for one execution after the last request was completed with an error
STATUS
OUT
Word
Table 12- 9
Condition codes
STATUS (W#16#....)
Description
80A0
80A1
80A2
80A3
80A4
80A5
80A6
80A7
XON and XOFF are illegal values (for example, the same value)
12.3.1.3
SEND_CFG instruction
SCL
Description
"SEND_CFG_DB"(
REQ:=_bool_in_,
PORT:=_uint_in_,
RTSONDLY:=_uint_in_,
RTSOFFDLY:=_uint_in_,
BREAK:=_uint_in_,
IDLELINE:=_uint_in_,
DONE=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_);
569
Communication processor
12.3 Point-to-Point (PtP) communication
You can set up the initial static configuration of the port in the device configuration
properties, or just use the default values. You can execute the SEND_CFG instruction in
your program to change the configuration.
The SEND_CFG configuration changes are not permanently stored in the CPU. The
parameters configured in the device configuration are restored when the CPU transitions
from RUN to STOP mode and after a power cycle. See Configuring transmit (send)
parameters (Page 586).
Table 12- 11 Data types for the parameters
Parameter and type
Data type
Description
REQ
IN
Bool
Activate the configuration change on the rising edge of this input.. (Default
value: False)
PORT
IN
PORT
RTSONDLY
IN
UInt
RTSOFFDLY
IN
UInt
BREAK
IN
UInt
This parameter specifies that a break will be sent upon the start of each
message for the specified number of bit times. The maximum is 65535 bit
times up to an eight second maximum. A value of 0 disables the feature.
(Default value: 12)
IDLELINE
IN
UInt
This parameter specifies that the line will remain idle for the specified
number of bit times before the start of each message. The maximum is
65535 bit times up to an eight second maximum. A value of 0 disables the
feature. (Default value: 12)
DONE
OUT
Bool
TRUE for one execution after the last request was completed with no error
ERROR
OUT
Bool
TRUE for one execution after the last request was completed with an error
STATUS
OUT
Word
Description
80B0
80B1
80B2
570
Communication processor
12.3 Point-to-Point (PtP) communication
12.3.1.4
RCV_CFG instruction
SCL
Description
"RCV_CFG_DB"(
REQ:=_bool_in_,
PORT:=_uint_in_,
CONDITIONS:=_struct_in_,
DONE=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_);
You can set up the initial static configuration of the communication port in the device
configuration properties, or just use the default values. You can execute the RCV_CFG
instruction in your program to change the configuration.
The RCV_CFG configuration changes are not permanently stored in the CPU. The
parameters configured in the device configuration are restored when the CPU transitions
from RUN to STOP mode and after a power cycle. See Configuring receive parameters
(Page 586) for more information.
Table 12- 14 Data types for the parameters
Data type
Description
REQ
Bool
PORT
IN
PORT
CONDITIONS
IN
CONDITIONS
DONE
OUT
Bool
TRUE for one scan, after the last request was completed with no
error
ERROR
OUT
Bool
TRUE for one scan, after the last request was completed with an
error
STATUS
OUT
Word
571
Communication processor
12.3 Point-to-Point (PtP) communication
See the topic "Configuring receive parameters (Page 587)" for a description of the message
start conditions.
IN
Data type
Description
UInt
10H - Sequence 1
20H - Sequence 2
40H - Sequence 3
80H - Sequence 4
IDLETIME
IN
UInt
The number of bit times required for idle line timeout. (Default value:
40). Only used with an idle line condition. 0 to 65535
STARTCHAR
IN
Byte
The start character used with the start character condition. (Default
value: B#16#2)
STRSEQ1CTL
IN
Byte
01H - Character 1
02H - Character 2
04H - Character 3
08H - Character 4
10H - Character 5
Disabling the bit associated with a character means any character
will match, in this sequence position.
STRSEQ1
IN
Char[5]
STRSEQ2CTL
IN
Byte
STRSEQ2
IN
Char[5]
STRSEQ3CTL
IN
Byte
STRSEQ3
IN
Char[5]
STRSEQ4CTL
IN
Byte
STRSEQ4
IN
Char[5]
572
Communication processor
12.3 Point-to-Point (PtP) communication
Example
Consider the following received hexadecimal coded message: "68 10 aa 68 bb 10 aa 16"
and the configured start sequences shown in the table below. Start sequences begin to be
evaluated when the first 68H character is successfully received. Upon successfully receiving
the fourth character (the second 68H), then start condition 1 is satisfied. Once the start
conditions are satisfied, the evaluation of the end conditions begins.
The start sequence processing can be terminated due to various parity, framing, or intercharacter timing errors. These errors result in no received message, because the start
condition was not satisfied.
Table 12- 16 Start conditions
Start condition
First Character
First Character +1
First Character +2
First Character +3
First Character +4
68H
xx
xx
68H
xx
10H
aaH
xx
xx
xx
dcH
aaH
xx
xx
xx
e5H
xx
xx
xx
xx
573
Communication processor
12.3 Point-to-Point (PtP) communication
Parameter type
Data type
Description
ENDCOND
IN
UInt
0
10H - N + LEN + M
20H - Sequence
MAXLEN
IN
UInt
1
IN
UInt
0
LENGTHSIZE
IN
UInt
0
Size of the byte field (1, 2, or 4 bytes). Only used with the
N + LEN + M end condition.
LENGTHM
IN
UInt
0
RCVTIME
IN
UInt
200
MSGTIME
IN
UInt
200
CHARGAP
IN
UInt
12
574
Communication processor
12.3 Point-to-Point (PtP) communication
Parameter
Parameter type
Data type
Description
ENDSEQ1CTL
IN
Byte
B#16#0
Char[5]
0
ENDSEQ1
IN
These are the enabling bits for each character for the end
sequence. Character 1 is bit 0, character 2 is bit 1, ,
character 5 is bit 4. Disabling the bit associated with a
character means any character will match, in this
sequence position.
Description
80C0
80C1
80C2
80C3
Maximum length end condition is enabled and max length is 0 or > 1024.
80C4
80C5
80C6
80C7
80C8
80C9
80CA
80CB
80CC
Start sequence (any one of 4) is enabled but all characters are "don't care".
12.3.1.5
SEND_PTP instruction
SCL
"SEND_PTP_DB"(
REQ:=_bool_in_,
PORT:=_uint_in_,
BUFFER:=_variant_in_,
LENGTH:=_uint_in_,
PTRCL:=_bool_in_,
DONE=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_);
Description
SEND_PTP initiates the transmission of the data
and transfers the assigned buffer to the
communication interface. The CPU program
continues while the CM or CB sends the data at the
assigned baud rate. Only one send operation can
be pending at a given time. The CM or CB returns
an error if a second SEND_PTP is executed while
the CM or CB is already transmitting a message.
575
Communication processor
12.3 Point-to-Point (PtP) communication
Table 12- 20 Data types for the parameters
Parameter and type
Data type
Description
REQ
IN
Bool
PORT
IN
PORT
BUFFER
IN
Variant
This parameter points to the starting location of the transmit buffer. (Default
value: 0)
LENGTH
IN
UInt
PTRCL
IN
Bool
OUT
Bool
TRUE for one scan, after the last request was completed with no error
ERROR
OUT
Bool
TRUE for one scan, after the last request was completed with an error
STATUS
OUT
Word
While a transmit operation is in progress, the DONE and ERROR outputs are FALSE. When
a transmit operation is complete, either the DONE or the ERROR output will be set TRUE to
show the status of the transmit operation. While DONE or ERROR is TRUE, the STATUS
output is valid.
The instruction returns a status of 16#7001 if the communication interface accepts the
transmit data. Subsequent SEND_PTP executions return 16#7002, if the CM or CB is still
busy transmitting. When the transmit operation is complete, the CM or CB returns the status
of the transmit operation as 16#0000 (if no errors occurred). Subsequent executions of
SEND_PTP with REQ low return a status of 16#7000 (not busy).
The following diagrams show the relationship of the output values to REQ. This assumes
that the instruction is called periodically to check for the status of the transmission process.
In the diagram below, it is assumed that the instruction is called every scan (represented by
the STATUS values).
The following diagram shows how the DONE and STATUS parameters are valid for only one
scan if the REQ line is pulsed (for one scan) to initiate the transmit operation.
576
Communication processor
12.3 Point-to-Point (PtP) communication
The following diagram shows the relationship of DONE, ERROR and STATUS parameters
when there is an error.
The DONE, ERROR and STATUS values are only valid until SEND_PTP executes again
with the same instance DB.
Table 12- 21 Condition codes
STATUS (W#16#....)
Description
80D0
80D1
80D2
80D3
Transmit aborted because of queue overflow (transmit more than 1024 bytes)
80D5
833A
577
Communication processor
12.3 Point-to-Point (PtP) communication
You can always set the LENGTH parameter to 0 and ensure that SEND_PTP sends the
entire data structure represented by the BUFFER parameter. If you only want to send part of
a data structure in the BUFFER parameter, you can set LENGTH as follows:
Table 12- 22 LENGTH and BUFFER parameters
LENGTH
BUFFER
Description
=0
Not used
The complete data is sent as defined at the BUFFER parameter. You do not
need to specify the number of transmitted bytes when LENGTH = 0.
>0
The LENGTH value must contain the byte count of this data type. For
example, for a Word value, the LENGTH must be two. For a Dword or Real,
the LENGTH must be four. Otherwise, nothing is transferred and the error
8088H is returned.
Structure
The LENGTH value can contain a byte count less than the complete byte
length of the structure, in which case only the first LENGTH bytes of the
structure are sent from the BUFFER. Since the internal byte organization of
a structure cannot always be determined, you might get unexpected results.
In this case, use a LENGTH of 0 to send the complete structure.
Array
The LENGTH value must contain a byte count that is less than the complete
byte length of the array and which must be a multiple of the data element
byte count. For example, the LENGTH parameter for an array of Words
must be a multiple of two and for an array of Reals, a multiple of four. When
LENGTH is specified, the number of array elements which are contained in
LENGTH bytes is transferred. If your BUFFER, for example, contains an
array of 15 Dwords (60 total bytes), and you specify a LENGTH of 20, then
the first five Dwords in the array are transferred.
The LENGTH value must be a multiple of the data element byte count.
Otherwise, STATUS = 8088H, ERROR = 1, and no transmission occurs.
String
12.3.1.6
RCV_PTP instruction
SCL
"RCV_PTP_DB"(
EN_R:=_bool_in_,
PORT:=_uint_in_,
BUFFER:=_variant_in_,
NDR=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
LENGTH=>_uint_out_);
Description
RCV_PTP checks for messages that have been
received in the CM or CB. If a message is available, it
will be transferred from the CM or CB to the CPU. An
error returns the appropriate STATUS value.
578
Communication processor
12.3 Point-to-Point (PtP) communication
Table 12- 24 Data types for the parameters
Parameter and type
Data type
Description
EN_R
IN
Bool
PORT
IN
PORT
BUFFER
IN
Variant
This parameter points to the starting location of the receive buffer. This buffer
should be large enough to receive the maximum length message.
NDR
OUT
Bool
TRUE for one execution when new data is ready and operation is complete
with no errors.
ERROR
OUT
Bool
TRUE for one execution after the operation was completed with an error.
STATUS
OUT
Word
LENGTH
OUT
UInt
The STATUS value is valid when either NDR or ERROR is TRUE. The STATUS value
provides the reason for termination of the receive operation in the CM or CB. This is typically
a positive value, indicating that the receive operation was successful and that the receive
process terminated normally. If the STATUS value is negative (the Most Significant Bit of the
hexadecimal value is set), the receive operation was terminated for an error condition such
as parity, framing, or overrun errors.
Each PtP communication interface can buffer up to a maximum of 1024 bytes. This could be
one large message or several smaller messages. If more than one message is available in
the CM or CB, the RCV_PTP instruction returns the oldest message available. A subsequent
RCV_PTP instruction execution returns the next oldest message available.
Table 12- 25 Condition codes
STATUS (W#16#...)
Description
0000
No buffer present
80E0
80E1
80E2
80E3
80E4
80E5
0094
0095
0096
0097
0098
579
Communication processor
12.3 Point-to-Point (PtP) communication
STATUS (W#16#...)
Description
0099
833A
12.3.1.7
RCV_RST instruction
SCL
Description
"RCV_RST_DB"(
REQ:=_bool_in_,
PORT:=_uint_in_,
DONE=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_);
Data type
Description
REQ
IN
Bool
Activates the receiver reset on the rising edge of this enable input (Default
value: False)
PORT
IN
PORT
DONE
OUT
Bool
When TRUE for one scan, indicates that the last request was completed
without errors.
ERROR
OUT
Bool
When TRUE, shows that the last request was completed with errors. Also,
when this output is TRUE, the STATUS output will contain related error codes.
STATUS
OUT
Word
580
Communication processor
12.3 Point-to-Point (PtP) communication
12.3.1.8
SGN_GET instruction
SCL
Description
"SGN_GET_DB"(
REQ:=_bool_in_,
PORT:=_uint_in_,
NDR=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
DTR=>_bool_out_,
DSR=>_bool_out_,
RTS=>_bool_out_,
CTS=>_bool_out_,
DCD=>_bool_out_,
RING=>_bool_out_);
Data type
Description
REQ
IN
Bool
Get RS232 signal state values on the rising edge of this input (Default value:
False)
PORT
IN
PORT
NDR
OUT
Bool
TRUE for one scan, when new data is ready and the operation is complete
with no errors
ERROR
OUT
Bool
TRUE for one scan, after the operation was completed with an error
STATUS
OUT
Word
DTR
OUT
Bool
DSR
OUT
Bool
Data set ready, communication partner ready (input). Default value: False
RTS
OUT
Bool
CTS
OUT
Bool
Clear to send, communication partner can receive data (input). Default value:
False
DCD
OUT
Bool
Data carrier detect, receive signal level (always False, not supported)
RING
OUT
Bool
Description
80F0
581
Communication processor
12.3 Point-to-Point (PtP) communication
12.3.1.9
SGN_SET instruction
SCL
Description
"SGN_SET_DB"(
REQ:=_bool_in_,
PORT:=_uint_in_,
SIGNAL:=_byte_in_,
RTS:=_bool_in_,
DTR:=_bool_in_,
DSR:=_bool_in_,
DONE=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_);
Data type
Description
REQ
IN
Bool
Start the set RS232 signals operation, on the rising edge of this input
(Default value: False)
PORT
IN
PORT
SIGNAL
IN
Byte
RTS
IN
Bool
DTR
IN
Bool
Data terminal ready, module ready to send value to set (true or false).
Default value: False
DSR
IN
Bool
Data set ready (only applies to DCE type interfaces), not used.
DONE
OUT
Bool
TRUE for one execution after the last request was completed with no
error
ERROR
OUT
Bool
TRUE for one execution after the last request was completed with an
error
STATUS
OUT
Word
582
Communication processor
12.3 Point-to-Point (PtP) communication
Table 12- 33 Condition codes
STATUS (W#16#....)
Description
80F0
80F1
80F2
80F3
12.3.2
Baud rate
Parity
Data bits per character
Number of stop bits
Flow control (RS232 only)
Wait time
For the CM 1241 RS232 and RS485 and CB RS485 (except for flow control, which only the
CM 1241 RS232 supports), the port configuration parameters are the same regardless of
whether you are configuring an RS232 or an RS485 communication module or the RS485
communication board. The parameter values can differ.
For the CM 1241 RS422/485, the Port configuration is performed differently as shown in the
figure below. The 422 mode of the CM 1241 RS422/485 module supports software flow
control as well.
583
Communication processor
12.3 Point-to-Point (PtP) communication
Parameter
Definition
Baud rate
The default value for the baud rate is 9.6 Kbits per second. Valid choices are: 300 baud,
600 baud, 1.2 Kbits, 2.4 Kbits, 4.8 Kbits, 9.6 Kbits, 19.2 Kbits, 38.4 Kbits, 57.6 Kbits, 76.8
Kbits, and 115.2 Kbits.
Parity
The default value for parity is no parity. Valid choices are: No parity, even, odd, mark (parity
bit always set to 1), and space (parity bit always set to 0).
The number of stop bits can be either one or two. The default is one.
Flow control
For the RS232 communication module, you can select either hardware or software flow
control, as described in the section "Managing flow control (Page 585)". If you select
hardware flow control, you can select whether the RTS signal is always on, or RTS is
switched. If you select software flow control, you can define the XON and XOFF characters.
The RS485 communication interfaces do not support flow control. The 422 mode of the CM
1241 RS422/485 module supports software flow control.
Wait time
Wait time specifies the time that the CM or CB waits to receive CTS after asserting RTS, or
for receiving an XON after receiving an XOFF, depending on the type of flow control. If the
wait time expires before the communication interface receives an expected CTS or XON,
the CM or CB aborts the transmit operation and returns an error to the user program. You
specify the wait time in milliseconds. The range is 0 to 65535 milliseconds.
Operating mode
This selects the operating mode RS422 or RS485 and network configurations.
This selects the bias options. Valid values are none, forward bias and reverse bias.
Reverse bias is used to allow cable break detection.
584
Communication processor
12.3 Point-to-Point (PtP) communication
12.3.2.1
Data Terminal Block Ready (DTR) and Data Set Ready (DSR) signal utilization
The CM sets DTR active for either type of hardware flow control. The module transmits only
when the DSR signal becomes active. The state of DSR is only evaluated at the start of the
send operation. If DSR becomes inactive after transmission has started, the transmission will
not be paused.
585
Communication processor
12.3 Point-to-Point (PtP) communication
12.3.3
12.3.3.1
586
Communication processor
12.3 Point-to-Point (PtP) communication
Parameter
Definition
RTS On delay
Specifies the amount of time to wait after activating RTS before transmission is initiated.
The range is 0 to 65535 ms, with a default value of 0. This parameter is valid only when the
port configuration (Page 583) specifies hardware flow control. CTS is evaluated after the
RTS On delay time has expired.
This parameter is applicable for RS232 modules only.
Specifies the amount of time to wait before de-activating RTS after completion of
transmission. The range is 0 to 65535 ms, with a default value of 0. This parameter is valid
only when the port configuration (Page 583) specifies hardware flow control.
Specifies that upon the start of each message, a break will be sent after the RTS On delay
(if configured) has expired and CTS is active.
12.3.3.2
You specify how many bit times constitute a break where the line is held in a spacing
condition. The default is 12 and the maximum is 65535, up to a limit of eight seconds.
Specifies that an idle line will be sent before message start. It is sent after the break, if a
break is configured. The "Idle line after a break" parameter specifies how many bit times
constitute an idle line where the line is held in a marking condition. The default is 12 and
the maximum is 65535, up to a limit of eight seconds.
You can also dynamically configure or change the receive message parameters from the
user program by using the RCV_CFG instruction (Page 571).
Note
Parameter values set from the RCV_CFG instruction in the user program override the port
configuration settings. Note that the CPU does not retain parameters set from the RCV_CFG
instruction in the event of power down.
587
Communication processor
12.3 Point-to-Point (PtP) communication
Definition
The Any Character condition specifies that any successfully received character indicates the
start of a message. This character is the first character within a message.
Line Break
The Line Break conditions specifies that a message receive operation starts after a break
character is received.
Idle Line
The Idle Line condition specifies that a message reception starts once the receive line has
been idle or quiet for the number of specified bit times. Once this condition occurs, the start
of a message begins.
Characters
Restarts the idle line timer
Idle line is detected and message receive is started
Special condition:
Recognize message start
with single character
Special condition:
Recognize message start
with a character sequence
Specifies that a particular character indicates the start of a message. This character is then
the first character within a message. Any character that is received before this specific
character is discarded. The default character is STX.
Specifies that a particular character sequence from up to four configured sequences
indicates the start of a message. For each sequence, you can specify up to five characters.
For each character position, you specify either a specific hex character, or that the character
is ignored in sequence matching (wild-card character). The last specific character of a
character sequence terminates that start condition sequence.
Incoming sequences are evaluated against the configured start conditions until a start
condition has been satisfied. Once the start sequence has been satisfied, evaluation of end
conditions begins.
You can configure up to four specific character sequences. You use a multiple-sequence
start condition when different sequences of characters can indicate the start of a message. If
any one of the character sequences is matched, the message is started.
588
Communication processor
12.3 Point-to-Point (PtP) communication
The order of checking start conditions is:
Idle line
Line break
Characters or character sequences
While checking for multiple start conditions, if one of the conditions is not met, the CM or CB
will restart the checking with the first required condition. After the CM or CB establishes that
the start conditions have been met, it begins evaluating end conditions.
589
Communication processor
12.3 Point-to-Point (PtP) communication
With this configuration, the start condition is satisfied when either pattern occurs:
When a five-character sequence is received where the first character is 0x6A and the fifth
character is 0x1C. The characters at positions 2, 3, and 4 can be any character with this
configuration. After the fifth character is received, evaluation of end conditions begins.
When two consecutive 0x6A characters are received, preceded by any character. In this
case, evaluation of end conditions begins after the second 0x6A is received (3
characters). The character preceding the first 0x6A is included in the start condition.
Example sequences that would satisfy this start condition are:
<any character> 6A 6A
6A 12 14 18 1C
6A 44 A5 D2 1C
590
Communication processor
12.3 Point-to-Point (PtP) communication
Parameter
Definition
The message end occurs when the configured amount of time to wait for the message end
has expired. The message timeout period begins when a start condition has been satisfied.
The default is 200 ms and the range is 0 to 65535 ms.
Received characters
Start Message condition satisfied: message timer starts
Message timer expires and terminates the message
Recognize message end by
response timeout
The message end occurs when the configured amount of time to wait for a response
expires before a valid start sequence is received. The response timeout period begins
when a transmission ends and the CM or CB begins the receive operation. The default
response timeout is 200 ms and the range is 0 to 65535 ms. If a character is not received
within the response time period, RCVTIME, then an error is returned to the corresponding
RCV_PTP instruction. The response timeout does not define a specific end condition. It
only specifies that a character must be successfully received within the specified time. You
must configure another end condition to indicate the actual end of a message.
5&97,0(
Transmitted characters
Received characters
First character must be successfully received by this time.
591
Communication processor
12.3 Point-to-Point (PtP) communication
Parameter
Definition
The message end occurs when the maximum configured timeout between any two
consecutive characters of a message has expired. The default value for the inter-character
gap is 12 bit times and the maximum number is 65535 bit times, up to a maximum of eight
seconds.
Received characters
Restarts the intercharacter timer
The intercharacter timer expires and terminates the message.
Recognize message end by
max length
The message end occurs when the configured maximum number of characters has been
received. The valid range for maximum length is 1 to 1023.
This condition can be used to prevent a message buffer overrun error. When this end
condition is combined with timeout end conditions and the timeout condition occurs, any
valid received characters are provided even if the maximum length is not reached. This
allows support for varying length protocols when only the maximum length is known.
The message itself specifies the length of the message. The message end occurs when a
message of the specified length has been received. The method for specifying and
interpreting the message length is described below.
The message end occurs when a specified character sequence is received. You can
specify a sequence of up to five characters. For each character position, you specify either
a specific hex character, or that the character is ignored in sequence matching.
Leading characters that are ignored characters are not part of the end condition. Trailing
characters that are ignored characters are part of the end condition.
592
Communication processor
12.3 Point-to-Point (PtP) communication
In this case, the end condition is satisfied when two consecutive 0x7A characters are
received, followed by any two characters. The character preceding the 0x7A 0x7A pattern is
not part of the end character sequence. Two characters following the 0x7A 0x7A pattern are
required to terminate the end character sequence. The values received at character
positions 4 and 5 are irrelevant, but they must be received to satisfy the end condition.
593
Communication processor
12.3 Point-to-Point (PtP) communication
STX
Len
(n)
ADR
STX
0x0C
xx
PKE
4
INDEX
5
xxxx
PWD
7
xxxx
STW
9
10
xxxx
HSW
11
12
xxxx
BCC
13
xxxx
14
xx
Configure the receive message length parameters for this message as follows:
n = 2 (The message length starts with byte 2.)
Length size = 1 (The message length is defined in one byte.)
Length m = 0 (There are no additional characters following the length specifier that are
not counted in the length count. Twelve characters follow the length specifier.)
In this example, the characters from 3 to 14 inclusive are the characters counted by Len (n).
Example 2: Consider another message structured according to the following protocol:
SD1
Len (n)
Len (n)
SD2
SA
FA
xx
0x06
0x06
xx
xx
xx
xx
xx
xx
FCS
ED
10
11
12
xx
xx
xx
Configure the receive message length parameters for this message as follows:
n = 3 (The message length starts at byte 3.)
Length size = 1 (The message length is defined in one byte.)
Length m = 3 (There are three characters following the length specifier that are not
counted in the length. In the protocol of this example, the characters SD2, FCS, and ED
are not counted in the length count. The other six characters are counted in the length
count; therefore the total number of characters following the length specifier is nine.)
In this example, the characters from 5 to 10 inclusive are the characters counted by Len (n).
12.3.4
Configuration instructions
Before your user program can engage in PtP communication, you must configure the
communication interface port and the parameters for sending data and receiving data.
594
Communication processor
12.3 Point-to-Point (PtP) communication
You can perform the port configuration and message configuration for each CM or CB
through the device configuration or through these instructions in your user program:
PORT_CFG (Page 568)
SEND_CFG (Page 569)
RCV_CFG (Page 571)
Communication instructions
The PtP communication instructions enable the user program to send messages to and
receive messages from the communication interfaces. For information about transferring
data with these instructions, see the section on data consistency (Page 153).
All of the PtP functions operate asynchronously. The user program can use a polling
architecture to determine the status of transmissions and receptions. SEND_PTP and
RCV_PTP can execute concurrently. The communication modules and communication board
buffer the transmit and receive messages as necessary up to a maximum buffer size of 1024
bytes.
The CMs and CB send messages to and receive messages from the actual point-to-point
devices. The message protocol is in a buffer that is either received from or sent to a specific
communication port. The buffer and port are parameters of the send and receive
instructions:
SEND_PTP (Page 575)
RCV_PTP (Page 578)
Additional instructions provide the capability to reset the receive buffer, and to get and set
specific RS232 signals:
RCV_RST (Page 580)
SGN_GET (Page 581)
SGN_SET (Page 582)
12.3.4.1
Polling architecture
The S7-1200 point-to-point instructions must be called cyclically/periodically to check for
received messages. Polling the send will tell the user program when the transmit has
completed.
595
Communication processor
12.3 Point-to-Point (PtP) communication
4. The RCV_PTP instruction is executed repeatedly to check for a response. When the CM
or CB has collected a response message, the RCV_PTP instruction copies the response
to the CPU and indicates that new data has been received.
5. The user program can process the response.
6. Go to step 1 and repeat the cycle.
12.3.5
. . .
596
Communication processor
12.3 Point-to-Point (PtP) communication
You must connect the communication interface of the CM 1241 RS232 module to the RS232
interface of the PC, which is normally COM1. Because both of these ports are Data Terminal
Equipment (DTE), you must switch the receive and transmit pins (2 and 3) when connecting
the two ports, which you can accomplish by either of the following methods:
Use a NULL modem adapter to swap pins 2 and 3 together with a standard RS232 cable.
Use a NULL modem cable, which already has pins 2 and 3 swapped. You can usually
identify a NULL modem cable as one with two female 9-pin D connector ends.
12.3.5.1
Note
The configuration settings for "Operating mode" and "Receive line initial state" are only
applicable for the CM 1241 (RS422/RS485) module. The other CM 1241 modules do not
have these port configuration settings. Refer to Configuring the RS422 and RS485
(Page 599)
Transmit message configuration: Accept the default for transmit message configuration.
No break is to be sent at message start.
597
Communication processor
12.3 Point-to-Point (PtP) communication
Receive message start configuration: Configure the CM 1241 to start receiving a
message when the communication line is inactive for at least 50 bit times (about 5
milliseconds at 9600 baud = 50 * 1/9600):
Receive message end configuration: Configure the CM 1241 to end a message when it
receives a maximum of 100 bytes or a linefeed character (10 decimal or A hexadecimal).
The end sequence allows up to five end characters in sequence. The fifth character in the
sequence is the linefeed character. The preceding four end sequence characters are
"dont care" or unselected characters. The CM 1241 does not evaluate the "dont care"
characters but looks for a linefeed character preceded by zero or more "dont care"
characters to indicate the message end.
598
Communication processor
12.3 Point-to-Point (PtP) communication
12.3.5.2
Select none when you supply the bias and termination (Case 3).
Select forward bias to use internal bias and termination (Case 2).
Select reverse bias to use internal bias and termination, and enable cable break
detection for both devices (Case 1).
Full duplex (RS422) four wire mode (multipoint master): select this option for the master
device when you have a network with one master and multiple slaves. In the Receive line
initial state:
Select none when you supply the bias and termination (Case 3).
Select forward bias to use internal bias and termination (Case 2).
Cable break detection is not possible in this mode.
Full duplex (RS422) four wire mode (multipoint slave): Select this option for all the slave
devices when you have a network with one master and multiple slaves. In the Receive
line initial state:
Select none when you supply the bias and termination (Case 3).
Select forward bias to use internal bias and termination (Case 2).
Select reverse bias to use internal bias and termination, and enable cable break
detection for the slaves (Case 1).
599
Communication processor
12.3 Point-to-Point (PtP) communication
9
5%
5$
9
5%
5$
9
*URXQG
9
([WHUQDO7HUPLQDWLRQ5HVLVWRU
9
5%
5$
9
9
5%
5$
9
600
Communication processor
12.3 Point-to-Point (PtP) communication
1RELDV
&OLHQW0DNHU
5%
5$
6HUYHU
6ODYH
9
1RUPDO
ELDV
9
6HUYHU
6ODYH
1RUPDO
ELDV
5%
5$
9
5%
5$
9
9
5%
5$
9
9
5%
5$
9
601
Communication processor
12.3 Point-to-Point (PtP) communication
5%
5$
12.3.5.3
5%
5$
Network 2: Use the NDR value (Tag_1 at M0.0) set by the RCV_PTP instruction to make a
copy of the number of bytes received and to set a flag (Tag_8 at M20.0) to trigger the
SEND_PTP instruction.
602
Communication processor
12.3 Point-to-Point (PtP) communication
Network 3: Enable the SEND_PTP instruction when the M20.0 flag is set. Also use this flag
to set the REQ input to TRUE for one scan. The REQ input tells the SEND_PTP instruction
that a new request is to be transmitted. The REQ input must only be set to TRUE for one
execution of SEND_PTP. The SEND_PTP instruction is executed every scan until the
transmit completes. The transmit is complete when the last byte of the message has been
transmitted from the CM 1241. When the transmit is complete, the DONE output (Tag_5 at
M10.0) is set TRUE for one execution of SEND_PTP.
Network 4: monitor the DONE output of SEND_PTP and reset the transmit flag (Tag_8 at
M20.0) when the transmit operation is complete. When the transmit flag is reset, the
RCV_PTP instruction in Network 1 is enabled to receive the next message.
12.3.5.4
603
Communication processor
12.4 Universal serial interface (USS) communication
12.3.5.5
12.4
6&38
866
1HW
'ULYHV
866
1HW
'ULYHV
604
Communication processor
12.4 Universal serial interface (USS) communication
12.4.1
7KH866B'59B'%GDWDEORFNLVD
EXIIHUWKDW\RXRQO\DFFHVV
LQGLUHFWO\YLDWKH866LQVWUXFWLRQV
866B'%
866B'59B'%
866B'59B'%
5HUVHUYHGIRU
373
&20GDWD
E\WHV
'ULYHGDWD
866B'59B'%
866B'59
'5,9(
&056
RU
&%56
(DFKFRPPXQLFDWLRQ
SRUWVXSSRUWVXSWR
GULYHV8VHWRDV
WKH'ULYHSDUDPHWHU
ER[LQSXW
866B530
'5,9(
'ULYH
'ULYH
866B:30
'5,9(
All drives (up to 16) connected to a single RS485 port are part of the same USS network. All
drives connected to a different RS485 port are part of a different USS network. Each USS
network is managed using a unique data block. All instructions associated with a single USS
network must share this data block. This includes all USS_DRV, USS_PORT, USS_RPM,
and USS_WPM instructions used to control all drives on a single USS network.
The USS_DRV instruction is a Function Block (FB). When you place the USS_DRV
instruction into the program editor, you will be prompted by the "Call options" dialog to assign
a DB for this FB. If this is the first USS_DRV instruction in this program for this USS network,
then you can accept the default DB assignment (or change the name if you wish) and the
new DB is created for you. If however this is not the first USS_DRV instruction for this
channel, then you must use the drop-down list in the "Call options" dialog to select the DB
name that was previously assigned for this USS network.
Instructions USS_PORT, USS_RPM, and USS_WPM are all Functions (FCs). No DB is
assigned when you place these FCs in the editor. Instead, you must assign the appropriate
DB reference to the "USS_DB" input of these instructions. Double-click on the parameter
field and then click on the parameter helper icon to see the available DB names).
605
Communication processor
12.4 Universal serial interface (USS) communication
The USS_PORT function handles the actual communication between the CPU and the
drives via the Point-to-Point (PtP) RS485 communication port. Each call to this function
handles one communication with one drive. Your program must call this function fast enough
to prevent a communication timeout by the drives. You may call this function in a main
program cycle OB or any interrupt OB.
Typically, you should call the USS_PORT function from a cyclic interrupt OB. The cycle time
of the cyclic interrupt OB should be set to about half of the minimum call interval (As an
example, 1200 baud communication should use a cyclic time of 350 ms or less).
The USS_DRV function block provides your program access to a specified drive on the USS
network. Its inputs and outputs are the status and controls for the drive. If there are 16 drives
on the network, your program must have at least 16 USS_DRV calls, one for each drive.
These blocks should be called at the rate that is required to control the operation of the drive.
You may only call the USS_DRV function block from a main program cycle OB.
CAUTION
Only call USS_DRV, USS_RPM, and USS_WPM from a main program cycle OB. The
USS_PORT function can be called from any OB, usually from a cyclic interrupt OB.
Do not use instructions USS_DRV, USS_RPM, or USS_WPM in a higher priority OB than
the corresponding USS_PORT instruction. For example, do not place the USS_PORT in
the main and a USS_RPM in a cyclic interrupt OB. Failure to prevent interruption of
USS_PORT execution may produce unexpected errors.
The USS_RPM and USS_WPM functions read and write the remote drive operating
parameters. These parameters control the internal operation of the drive. See the drive
manual for the definition of these parameters. Your program can contain as many of these
functions as necessary, but only one read or write request can be active per drive, at any
given time. You may only call the USS_RPM and USS_WPM functions from a main program
cycle OB.
606
Communication processor
12.4 Universal serial interface (USS) communication
Table 12- 34 Calculating the time requirements
Baud rate
1200
790
2370
2400
405
1215
4800
212.5
638
9600
116.3
349
19200
68.2
205
38400
44.1
133
57600
36.1
109
115200
28.1
85
607
Communication processor
12.4 Universal serial interface (USS) communication
12.4.2
USS_DRV instruction
SCL
"USS_DRV_DB"(
RUN:=_bool_in_,
OFF2:=_bool_in_,
OFF3:=_bool_in_,
F_ACK:=_bool_in_,
DIR:=_bool_in_,
DRIVE:=_usint_in_,
PZD_LEN:=_usint_in_,
SPEED_SP:=_real_in_,
CTRL3:=_word_in_,
CTRL4:=_word_in_,
CTRL5:=_word_in_,
CTRL6:=_word_in_,
CTRL7:=_word_in_,
CTRL8:=_word_in_,
NDR=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
RUN_EN=>_bool_out_,
D_DIR=>_bool_out_,
INHIBIT=>_bool_out_,
FAULT=>_bool_out_,
SPEED=>_real_out_,
STATUS1=>_word_out_,
STATUS3=>_word_out_,
STATUS4=>_word_out_,
STATUS5=>_word_out_,
STATUS6=>_word_out_,
STATUS7=>_word_out_,
STATUS8=>_word_out_);
Default view
Expanded view
Description
The USS_DRV instruction exchanges data with a drive
by creating request messages and interpreting the drive
response messages. A separate function block should
be used for each drive, but all USS functions
associated with one USS network and PtP
communication port must use the same instance data
block. You must create the DB name when you place
the first USS_DRV instruction and then reference the
DB that was created by the initial instruction usage.
STEP 7 automatically creates the DB when you insert
the instruction.
LAD and FBD: Expand the box to reveal all the parameters by clicking the bottom of the box. The parameter pins that
are grayed are optional and parameter assignment is not required.
Data type
Description
RUN
IN
Bool
Drive start bit: When true, this input enables the drive to run at the
preset speed. When RUN goes to false while a drive is running, the
motor will be ramped down to a stop. This behavior differs from the
dropping power (OFF2) or braking the motor (OFF3).
OFF2
IN
Bool
Electrical stop bit: When false, this bit cause the drive to coast to a stop
with no braking.
OFF3
IN
Bool
Fast stop bit: When false, this bit causes a fast stop by braking the
drive rather than just allowing the drive to coast to a stop.
608
Communication processor
12.4 Universal serial interface (USS) communication
Data type
Description
F_ACK
IN
Bool
Fault acknowledge bit: This bit is set to reset the fault bit on a drive.
The bit is set after the fault is cleared to indicate to the drive it no longer
needs to indicate the previous fault.
DIR
IN
Bool
Drive direction control: This bit is set to indicate that the direction is
forward (for positive SPEED_SP).
DRIVE
IN
USInt
Drive address: This input is the address of the USS drive. The valid
range is drive 1 to drive 16.
PZD_LEN
IN
USInt
Word length: This is the number of words of PZD data. The valid values
are 2, 4, 6, or 8 words. The default value is 2.
SPEED_SP
IN
Real
CTRL3
IN
Word
CTRL4
IN
Word
CTRL5
IN
Word
CTRL6
IN
Word
CTRL7
IN
Word
CTRL8
IN
Word
NDR
OUT
Bool
New data ready: When true, the bit indicates that the outputs contain
data from a new communication request.
ERROR
OUT
Bool
Error occurred: When true, this indicates that an error has occurred and
the STATUS output is valid. All other outputs are set to zero on an
error. Communication errors are only reported on the USS_PORT
instruction ERROR and STATUS outputs.
STATUS
OUT
Word
The status value of the request indicates the result of the scan. This is
not a status word returned from the drive.
RUN_EN
OUT
Bool
D_DIR
OUT
Bool
Drive direction: This bit indicates whether the drive is running forward.
INHIBIT
OUT
Bool
Drive inhibited: This bit indicates the state of the inhibit bit on the drive.
FAULT
OUT
Bool
Drive fault: This bit indicates that the drive has registered a fault. You
must fix the problem and then set the F_ACK bit to clear this bit when
set.
SPEED
OUT
Real
Drive Current Speed (scaled value of drive status word 2): The value of
the speed of the drive as a percentage of configured speed.
STATUS1
OUT
Word
Drive Status Word 1: This value contains fixed status bits of a drive.
STATUS3
OUT
Word
STATUS4
OUT
Word
STATUS5
OUT
Word
609
Communication processor
12.4 Universal serial interface (USS) communication
Data type
Description
STATUS6
OUT
Word
STATUS7
OUT
Word
STATUS8
OUT
Word
When the initial USS_DRV execution occurs, the drive indicated by the USS address
(parameter DRIVE) is initialized in the Instance DB. After this initialization, subsequent
executions of USS_PORT can begin communication to the drive at this drive number.
Changing the drive number requires a CPU STOP-to-RUN mode transition that initializes the
instance DB. Input parameters are configured into the USS TX message buffer and outputs
are read from a "previous" valid response buffer if any exists. There is no data transmission
during USS_DRV execution. Drives communicate when USS_PORT is executed. USS_DRV
only configures the messages to be sent and interprets data that might have been received
from a previous request.
You can control the drive direction of rotation using either the DIR input (Bool) or using the
sign (positive or negative) with the SPEED_SP input (Real). The following table indicates
how these inputs work together to determine the drive direction, assuming the motor is wired
for forward rotation.
Table 12- 37 Interaction of the SPEED_SP and DIR parameters
12.4.3
SPEED_SP
DIR
Value > 0
Reverse
Value > 0
Forward
Value < 0
Forward
Value < 0
Reverse
USS_PORT instruction
SCL
USS_PORT(
PORT:=_uint_in_,
BAUD:=_dint_in_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
USS_DB:=_fbtref_inout_);
Description
The USS_PORT instruction handles communication
over a USS network.
610
Communication processor
12.4 Universal serial interface (USS) communication
Table 12- 39 Data types for the parameters
Parameter and type
Data type
Description
PORT
IN
Port
BAUD
IN
DInt
USS_DB
INOUT
USS_BASE
ERROR
OUT
Bool
When true, this output indicates that an error has occurred and the
STATUS output is valid.
STATUS
OUT
Word
The status value of the request indicates the result of the scan or
initialization. Additional information is available in the
"USS_Extended_Error" variable for some status codes.
Typically, there is only one USS_PORT instruction per PtP communication port in the
program, and each call of this function handles a transmission to or from a single drive. All
USS functions associated with one USS network and PtP communication port must use the
same instance DB.
Your program must execute the USS_PORT instruction often enough to prevent drive
timeouts. USS_PORT is usually called from a cyclic interrupt OB to prevent drive timeouts
and keep the most recent USS data updates available for USS_DRV calls.
12.4.4
USS_RPM instruction
SCL
USS_RPM(REQ:=_bool_in_,
DRIVE:=_usint_in_,
PARAM:=_uint_in_,
INDEX:=_uint_in_,
DONE=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
VALUE=>_variant_out_,
USS_DB:=_fbtref_inout_);
Description
The USS_RPM instruction reads a parameter from
a drive. All USS functions associated with one USS
network and PtP communication port must use the
same data block. USS_RPM must be called from a
main program cycle OB.
Description
REQ
Parameter type
IN
Bool
Send request: When true, REQ indicates that a new read request is
desired. This is ignored if the request for this parameter is already
pending.
DRIVE
IN
USInt
Drive address: DRIVE is the address of the USS drive. The valid range is
drive 1 to drive 16.
611
Communication processor
12.4 Universal serial interface (USS) communication
Parameter type
Data type
Description
PARAM
IN
UInt
INDEX
IN
UInt
USS_DB
INOUT
USS_BASE
VALUE
IN
This is the value of the parameter that was read and is valid only when
the DONE bit is true.
DONE1
OUT
Bool
When true, indicates that the VALUE output holds the previously
requested read parameter value. This bit is set when USS_DRV sees the
read response data from the drive. This bit is reset when either: you
request the response data via another USS_RPM poll, or on the second
of the next two calls to USS_DRV
ERROR
OUT
Bool
Error occurred: When true, ERROR indicates that an error has occurred
and the STATUS output is valid. All other outputs are set to zero on an
error. Communication errors are only reported on the USS_PORT
instruction ERROR and STATUS outputs.
STATUS
OUT
Word
The DONE bit indicates that valid data has been read from the referenced motor drive and delivered to the CPU. It does
not indicate that the USS library is capable of immediately reading another parameter. A blank PKW request must be
sent to the motor drive and must also be acknowledged by the instruction before the parameter channel for the specific
drive becomes available for use. Immediately calling a USS_RPM or USS_WPM FC for the specified motor drive will
result in a 0x818A error.
12.4.5
USS_WPM instruction
Note
EEPROM write operations (for the EEPROM inside a USS drive)
Do not overuse the EEPROM permanent write operation. Minimize the number of EEPROM
write operations to extend the EEPROM life.
612
Communication processor
12.4 Universal serial interface (USS) communication
Table 12- 42 USS_WPM instruction
LAD / FBD
SCL
USS_WPM(REQ:=_bool_in_,
DRIVE:=_usint_in_,
PARAM:=_uint_in_,
INDEX:=_uint_in_,
EEPROM:=_bool_in_,
VALUE:=_variant_in_,
DONE=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
USS_DB:=_fbtref_inout_);
Description
The USS_WPM instruction modifies a parameter in the
drive. All USS functions associated with one USS
network and PtP communication port must use the
same data block.
USS_WPM must be called from a main program cycle
OB.
Data type
Description
REQ
IN
Bool
Send request: When true, REQ indicates that a new write request is
desired. This is ignored if the request for this parameter is already
pending.
DRIVE
IN
USInt
Drive address: DRIVE is the address of the USS drive. The valid range is
drive 1 to drive 16.
PARAM
IN
UInt
INDEX
IN
UInt
EEPROM
IN
Bool
VALUE
IN
USS_DB
INOUT
USS_BASE
DONE1
OUT
Bool
When true, DONE indicates that the input VALUE has been written to the
drive. This bit is set when USS_DRV sees the write response data from
the drive. This bit is reset when either you request the response data via
another USS_WPM poll, or on the second of the next two calls to
USS_DRV
613
Communication processor
12.4 Universal serial interface (USS) communication
Data type
Description
ERROR
OUT
Bool
When true, ERROR indicates that an error has occurred and the STATUS
output is valid. All other outputs are set to zero on an error.
Communication errors are only reported on the USS_PORT instruction
ERROR and STATUS outputs.
STATUS
OUT
Word
The DONE bit indicates that valid data has been read from the referenced motor drive and delivered to the CPU. It does
not indicate that the USS library is capable of immediately reading another parameter. A blank PKW request must be
sent to the motor drive and must also be acknowledged by the instruction before the parameter channel for the specific
drive becomes available for use. Immediately calling a USS_RPM or USS_WPM FC for the specified motor drive will
result in a 0x818A error.
12.4.6
Description
0000
No error
8180
The length of the drive response did not match the characters received from the drive. The drive number
where the error occurred is returned in the "USS_Extended_Error" variable. See the extended error
description below this table.
8181
8182
The user supplied a Word for a parameter value and received a DWord or Real from the drive in the
response.
8183
The user supplied a DWord or Real for a parameter value and received a Word from the drive in the
response.
8184
The response telegram from drive had a bad checksum. The drive number where the error occurred is
returned in the "USS_Extended_Error" variable. See the extended error description below this table.
8185
8186
The speed set point is out of the valid range (valid speed SP range: -200% to 200%).
8187
The wrong drive number responded to the request sent. The drive number where the error occurred is
returned in the "USS_Extended_Error" variable. See the extended error description below this table.
8188
8189
818A
The parameter request channel is in use by another request for this drive.
818B
The drive has not responded to requests and retries. The drive number where the error occurred is
returned in the "USS_Extended_Error" variable. See the extended error description below this table.
818C
The drive returned an extended error on a parameter request operation. See the extended error
description below this table.
818D
The drive returned an illegal access error on a parameter request operation. See your drive manual for
information of why parameter access may be limited.
614
Communication processor
12.4 Universal serial interface (USS) communication
STATUS
(W#16#....)
Description
818E
The drive has not been initialized. This error code is returned to USS_RPM or USS_WPM when
USS_DRV, for that drive, has not been called at least once. This keeps the initialization on first scan of
USS_DRV from overwriting a pending parameter read or write request, since it initializes the drive as a
new entry. To fix this error, call USS_DRV for this drive number.
80Ax-80Fx
Specific errors returned from PtP communication FBs called by the USS Library - These error code
values are not modified by the USS library and are defined in the PtP instruction descriptions.
In addition to the USS instruction errors listed above, errors can be returned from the
underlying PtP communication instructions (Page 566).
615
Communication processor
12.4 Universal serial interface (USS) communication
USS drives support read and write access to a drive's internal parameters. This feature
allows remote control and configuration of the drive. Drive parameter access operations can
fail due to errors such as values out of range or illegal requests for a drive's current mode.
The drive generates an error code value that is returned in the "USS_Extended_Error"
variable. This error code value is only valid for the last execution of a USS_RPM or
USS_WPM instruction. The drive error code is put into USS_Extended_Error variable when
the STATUS code value is hexadecimal 818C. The error code value of
"USS_Extended_Error" depends on the drive model. See the drive's manual for a description
of the extended error codes for read and write parameter operations.
12.4.7
616
Communication processor
12.4 Universal serial interface (USS) communication
A (N)
B (P)
The terminal block connections are labeled numerically. Using a PROFIBUS connector on
the S7-1200 side, connect the A terminal of the cable to the drive terminal 15 (for an MM420)
or terminal 30 (MM440). Connect the B terminal of B (P) A (N) the cable connector to
terminal 14 (MM420) or terminal 29 (MM440).
If the S7-1200 is a terminating node in the network, or if the connection is point-to-point, it is
necessary to use terminals A1 and B1 (not A2 and B2) of the connector since they allow the
termination settings to be set (for example, with DP connector type 6ES7 972--0BA40-0X40).
CAUTION
Make sure the drive covers are replaced properly before supplying power to the unit.
MM420
14
120 ohm
15
470 ohm
1.5K ohm
2
1
MM440
29
120 ohm
N 30
470 ohm
0V
+10 V
1.5K ohm
617
Communication processor
12.4 Universal serial interface (USS) communication
P0010=30
P0970=1
If you skip step 1, then ensure that these parameters are set to the indicated
values.
P0003=3
3. Check the motor settings for your drive. The settings will vary according to
the motor(s) being used.
To set the parameters P304, P305, P307, P310, and P311, you must first set
parameter P010 to 1 (quick commissioning mode). When you are finished
setting the parameters, set parameter P010 to 0. Parameters P304, P305,
P307, P310, and P311 can only be changed in the quick commissioning
mode.
4. Set the local/remote control mode.
P1120=(0 to 650.00)
P1121=(0 to 650.00)
618
Communication processor
12.5 Modbus communication
12.5
Modbus communication
12.5.1
01
02
03
04
Table 12- 46 Write data functions: Write remote I/O and modify program data
Modbus function code
05
06
15
16
Address
Standard station address
1 to 247
1 to 65535
Station address
619
Communication processor
12.5 Modbus communication
Address range
RTU station
TCP station
10K
64K
10K
620
Communication processor
12.5 Modbus communication
A Modbus TCP client (master) must control the client-server connection with the
DISCONNECT parameter. The basic Modbus client actions are shown below.
1. Initiate a connection to a particular server (slave) IP address and IP port number
2. Initiate client transmission of a Modbus messages and receive the server responses
3. When desired, initiate the disconnection of client and server to enable connection with a
different server.
621
Communication processor
12.5 Modbus communication
12.5.2
Modbus TCP
12.5.2.1
SCL
Description
"MB_CLIENT_DB"(
REQ:=_bool_in_,
DISCONNECT:=_bool_in_,
CONNECT_ID=_uint_in_,
IP_OCTET_1:=_byte_in_,
IP_OCTET_2:=_byte_in_,
IP_OCTET_3:=_byte_in_,
IP_OCTET_4:=_byte_in_,
IP_PORT:=_uint_in_,
MB_MODE:=_usint_in_,
MB_DATA_ADDR:=_udint_in_,
MB_DATA_LEN:=_uint_in_,
DONE=>_bool_out_,
BUSY=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
MB_DATA_PTR:=_variant_inout_);
MB_CLIENT communicates as a
Modbus TCP client through the
PROFINET connector on the S71200 CPU. No additional
communication hardware module
is required.
MB_CLIENT can make a clientserver connection, send a
Modbus function request, receive
a response, and control the
disconnection from a Modbus
TCP server.
REQ
In
Bool
DISCONNECT
IN
Bool
CONNECT_ID
IN
UInt
IP_OCTET_1
IN
USInt
IP_OCTET_2
IN
USInt
IP_OCTET_3
IN
USInt
IP_OCTET_4
IN
USInt
IP_PORT
IN
UInt
Default value = 502: The IP port number of the server to which the client will
attempt to connect and ultimately communicate using the TCP/IP protocol.
S7-1200 Programmable controller
622
Communication processor
12.5 Modbus communication
MB_MODE
IN
USInt
Mode Selection: Assigns the type of request (read, write, or diagnostic). See
the Modbus functions table below for details.
MB_DATA_ADDR
IN
UDInt
MB_DATA_LEN
IN
UInt
MB_DATA_PTR
IN_OUT
Variant
Pointer to the Modbus data register: The register buffers data going to or
coming from a Modbus server. The pointer must assign a standard global
DB or a M memory address.
DONE
OUT
Bool
The DONE bit is TRUE for one scan, after the last request was completed
with no error.
BUSY
OUT
Bool
ERROR
OUT
Bool
The ERROR bit is TRUE for one scan, after the MB_CLIENT execution was
terminated with an error. The error code value at the STATUS parameter is
valid only during the single cycle where ERROR = TRUE.
STATUS
OUT
Word
REQ parameter
FALSE = No Modbus communication request
TRUE = Request to communicate with a Modbus TCP server
If no instance of MB_CLIENT is active and parameter DISCONNECT=0, when REQ=1 a new
Modbus request will start. If the connection is not already established then a new connection
will be made.
If the same instance of MB_CLIENT is executed again with DISCONNECT=0 and REQ=1,
before the completion of the current request, then no subsequent Modbus transmission will
be made. However, as soon as the current request is completed, a new request can be
processed if MB_CLIENT is executed with REQ=1.
When the current MB_CLIENT communication request is complete, the DONE bit is TRUE
for one cycle. The DONE bit can be used as a time gate to sequence multiple MB_CLIENT
requests.
Note
Input data consistency during MB_CLIENT processing
Once a Modbus client initiates a Modbus operation, all the input states are saved internally
and are then compared on each successive call. The comparison is used to determine if this
particular call was the originator of the active client request. More than one MB_CLIENT call
can be performed using a common instance DB.
As a result, it is important that the inputs are not changed during the period of time that a
MB_CLIENT operation is actively being processed. If this rule is not followed, then a
MB_CLIENT cannot determine that it is the active instance.
623
Communication processor
12.5 Modbus communication
Modbus
function
Data length
MB_DATA_ADDR
01
1 to 2000
1 to 9999
02
1 to 2000
10001 to 19999
03
1 to 125
40001 to 49999 or
400001 to 465535
04
1 to 125
30001 to 39999
05
1 to 9999
06
40001 to 49999 or
400001 to 465535
15
2 to 1968
1 to 9999
16
2 to 123
40001 to 49999 or
400001 to 465535
15
1 to 1968
1 to 9999
16
1 to 123
40001 to 49999 or
400001 to 465535
11
11
80
08
624
Communication processor
12.5 Modbus communication
MB_MODE
Modbus
function
Data length
81
08
MB_DATA_ADDR
Reserved
Note
MB_DATA_PTR assigns a buffer to store data read/written to/from a Modbus TCP server
The data buffer can be in a standard global DB or M memory address.
For a buffer in M memory, use the standard Any Pointer format. This is in the format P#"Bit
Address" "Data Type" "Length", an example would be P#M1000.0 WORD 500.
625
Communication processor
12.5 Modbus communication
Complex DB elements can be assigned by MB_DATA_PTR, such as
Standard arrays
Named structures where each element is unique.
Named complex structures where each element has a unique name and a 16 or 32 bit
data type.
There is no requirement that the MB_DATA_PTR data areas be in the same global data
block (or M memory area). You can assign one data block for Modbus reads, another
data block for Modbus writes, or one data block for each MB_CLIENT station.
description
Blocked_Proc_Timeout
Real
3.0
MB_Unit_ID
Word
255
626
Communication processor
12.5 Modbus communication
Variable
description
RCV_TIMEOUT
Real
2.0
Connected
Bool
Response code to
Modbus client
(B#16#)
8381
01
8382
03
8383
02
Data address error or access outside the bounds of the MB_HOLD_REG address area
8384
03
8385
03
7001
MB_CLIENT is waiting for a Modbus server response to a connect or disconnect request, on the assigned
TCP port. This is only reported for the first execution of a connect or disconnect operation.
7002
MB_CLIENT is waiting for a Modbus server response to a connect or disconnect request, for the assigned
TCP port. This will be reported for any subsequent executions, while waiting for completion of a connect
or disconnect operation.
7003
A disconnect operation has successfully completed (Only valid for one PLC scan).
80C8
The server did not respond in the assigned time. MB_CLIENT must receive a response using the
transaction ID that was originally transmitted within the assigned time or this error is returned. Check the
connection to the Modbus server device.
This error is only reported after any configured retries (if applicable) have been attempted.
8188
8189
818A
818B
Invalid pointer to the DATA_PTR area. This can be the combination of MB_DATA_ADDRESS +
MB_DATA_LEN.
818C
8200
8380
Received Modbus frame is malformed or too few bytes have been received.
627
Communication processor
12.5 Modbus communication
STATUS
(W#16#)
8387
The assigned Connection ID parameter is different from the ID used for previous requests. There can only
be a single Connection ID used within each MB_CLIENT instance DB.
This is also used as an internal error if the Modbus TCP protocol ID received from a server is not 0.
8388
1
A Modbus server returned a quantity of data that is different than what was requested. This applies to
Modbus functions 15 or 16 only.
In addition to the MB_CLIENT errors listed above, errors can be returned from the underlying T block communication
instructions (TCON, TDISCON, TSEND, and TRCV).
See also
TCON, TDISCON, TSEND, AND TRCV (Page 439)
12.5.2.2
SCL
"MB_SERVER_DB"(
DISCONNECT:=_bool_in_,
CONNECT_ID:=_uint_in_,
IP_PORT:=_uint_in_,
NDR=>_bool_out_,
DR=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
MB_HOLD_REG:=_variant_inout_);
Description
MB_SERVER communicates as a
Modbus TCP server through the
PROFINET connector on the S7-1200
CPU. No additional communication
hardware module is required.
MB_SERVER can accept a request to
connect with Modbus TCP client ,
receive a Modbus function request, and
send a response message.
DISCONNECT
IN
Bool
CONNECT_ID
IN
UInt
628
Communication processor
12.5 Modbus communication
IP_PORT
IN
UInt
Default value = 502: The IP port number that identifies the IP port that will be
monitored for a connection request from a Modbus client.
These TCP port numbers are not allowed for a MB_SERVER passive
connection: 20, 21, 25, 80, 102, 123, 5001, 34962, 34963, and 34964.
MB_HOLD_REG
IN_OUT
Variant
NDR
OUT
Bool
New Data Ready: 0 = No new data, 1 = Indicates that new data has been
written by a Modbus client
DR
OUT
Bool
Data Read: 0 = No data read, 1 = Indicates that data has been read by a
Modbus client.
ERROR
OUT
Bool
The ERROR bit is TRUE for one scan, after MB_SERVER execution was
terminated with an error. The error code value at the STATUS parameter is
valid only during the single cycle where ERROR = TRUE.
STATUS
OUT
Word
MB_SERVER allows incoming Modbus function codes (1, 2, 4, 5, and 15) to read or write
bits and words directly in the input process image and output process image of the S7-1200
CPU. For data transfer function codes (3, 6, and 16), the MB_HOLD_REG parameter must
be defined as a data type larger than a byte. The following table shows the mapping of
Modbus addresses to the process image in the CPU.
Table 12- 57 Mapping of Modbus addresses to the process image
Modbus functions
Codes
Function
S7-1200
Data area
Address range
Data area
CPU address
01
Read bits
Output
To
8192
Q0.0 to Q1023.7
02
Read bits
Input
10001
To
18192
I0.0 to I1023.7
04
30001
To
30512
IW0 to IW1022
05
Write bit
Output
To
8192
Q0.0 to Q1023.7
15
Write bits
Output
To
8192
Q0.0 to Q1023.7
Incoming Modbus message function codes function codes (3, 6, and 16) read or write words
in a Modbus holding register which can be an M memory address range or a data block. The
type of holding register is specified by the MB_HOLD_REG parameter.
Note
MB_HOLD_REG parameter assignment
The Modbus Holding Register can be in a standard global DB or a M memory address.
For A Modbus holding register in M memory, use the standard Any Pointer format. This is in
the format P#"Bit Address" "Data Type" "Length". An example would be P#M1000.0 WORD
500
629
Communication processor
12.5 Modbus communication
The following table shows examples of Modbus address to holding register mapping used for
Modbus function codes 03 (read words), 06 (write word), and 16 (write words). The actual
upper limit of DB addresses is determined by the maximum work memory limit and M
memory limit, for each CPU model.
Table 12- 58 Mapping examples of Modbus address to CPU memory address
Modbus Address
P#DB10.DBx0.0 Word 5
"Recipe".ingredient
40001
MW100
DB10.DBW0
"Recipe".ingredient[1]
40002
MW102
DB10.DBW2
"Recipe".ingredient[2]
40003
MW104
DB10.DBW4
"Recipe".ingredient[3]
40004
MW106
DB10.DBW6
"Recipe".ingredient[4]
40005
MW108
DB10.DBW8
"Recipe".ingredient[5]
630
Communication processor
12.5 Modbus communication
Table 12- 59 Modbus diagnostic function codes
MB_SERVER Modbus diagnostic functions
Codes
Sub-function
Description
08
0x0000
Return query data echo test: The MB_SERVER will echo back to a Modbus client a word of data
that is received.
08
0x000A
Clear communication event counter: The MB_SEVER will clear out the communication event
counter that is used for Modbus function 11.
11
Get communication event counter: The MB_SERVER uses an internal communication event
counter for recording the number of successful Modbus read and write requests that are sent to
the Modbus server. The counter does not increment on any Function 8 or Function 11 requests. It
is also not incremented on any requests that result in a communication error.
The broadcast function is not available for Modbus TCP, because only one client-server
connection exists at any one time.
MB_SERVER variables
This table shows the public static variables stored in the MB_SERVER instance data block
that can be used in your program
Table 12- 60 MB_SERVER public static variables
Variable
Description
HR_Start_Offset
Word
Request_Count
Word
Server_Message_Count
Word
Xmt_Rcv_Count
Word
Exception_Count
Word
Success_Count
Word
The number of requests received for this specific server that have no
protocol errors.
Connected
Bool
Your program can write values to the HR_Start_Offset and control Modbus server
operations. The other variables can be read to monitor Modbus status.
HR_Start_Offset
Modbus holding register addresses begin at 40001 . These addresses correspond to the
beginning PLC memory address of the holding register. However, you can configure the
"HR_Start_Offset" variable to start the beginning Modbus holding register address at another
value instead of 40001.
For example, if the holding register is configured to start at MW100 and is 100 words long.
An offset of 20 specifies a beginning holding register address of 40021 instead of 40001.
Any address below 40021 and above 40119 will result in an addressing error.
631
Communication processor
12.5 Modbus communication
Table 12- 61 Example of Modbus holding register addressing
HR_Start_Offset
0
20
Address
Minimum
Maximum
40001
40099
S7-1200 address
MW100
MW298
40021
40119
S7-1200 address
MW100
MW298
HR_Start_Offset is a word value that specifies the starting address of the Modbus holding
register and is stored in the MB_SERVER instance data block. You can set this public static
variable value by using the parameter helper drop-list, after MB_SERVER is placed in your
program.
For example, after MB_SERVER is placed in a LAD network, you can go to a previous
network and assign the HR_Start_Offset value. The value must be assigned prior to
execution of MB_SERVER.
Entering a Modbus server
variable using the default DB name:
1. Set the cursor in the parameter field and
type an m character.
2. Select "MB_SERVER_DB" from the droplist of DB names.
3. Select
"MB_SERVER_DB.HR_Start_Offset" from
the drop-list of DB variables.
Response code to
Modbus server
(B#16#)
7001
MB_SERVER is waiting for a Modbus client to connect to the assigned TCP port. This
code is reported on the first execution of a connect or disconnect operation.
7002
MB_SERVER is waiting for a Modbus client to connect to the assigned TCP port. This
code is reported for any subsequent executions, while waiting for completion of a
connect or disconnect operation.
7003
A disconnect operation has successfully completed (Only valid for one PLC scan).
8187
632
Communication processor
12.5 Modbus communication
STATUS
(W#16#)
Response code to
Modbus server
(B#16#)
818C
8381
01
8382
03
8383
02
Data address error or access outside the bounds of the MB_HOLD_REG address area
8384
03
8385
03
addition to the MB_SERVER errors listed above, errors can be returned from the
underlying T block communication instructions (TCON, TDISCON, TSEND, and TRCV).
See also
TCON, TDISCON, TSEND, AND TRCV (Page 439)
12.5.2.3
633
Communication processor
12.5 Modbus communication
Network 2: Connection #2 with independent IP_PORT, connection ID, and instance DB
12.5.2.4
634
Communication processor
12.5 Modbus communication
Network 2: Modbus function 2 - Read 32 input image bits
12.5.2.5
635
Communication processor
12.5 Modbus communication
Network 2:
Modbus function 3 - Read holding register words (in S7-1200 memory)
12.5.2.6
12.5.2.7
636
Communication processor
12.5 Modbus communication
The example shows both clients writing to the same memory area. Also, a returned error is
captured which is optional.
Network 1: Modbus function 3 - Read holding register words
12.5.3
Modbus RTU
There are two versions of the Modbus RTU instructions available in STEP 7:
Version 1 was initially available in STEP 7 Basic V10.5.
Version 2 is available in STEP 7 Basic/Professional V11. The version 2 design adds REQ
and DONE parameters to MB_COMM_LOAD. Also, the MB_ADDR parameter for
MB_MASTER and MB_SLAVE now allows a UInt value for extended addressing.
For compatibility and ease of migration, you can choose which instruction version to insert
into your user program.
637
Communication processor
12.5 Modbus communication
Do not use both 1.x and 2.y instruction versions in the same CPU program. Your program's
Modbus instructions must have the same major version number (1.x, 2.y, or V.z). The
individual instructions within a major version group may have different minor versions (1.x).
Click the icon on the instruction tree task card to enable the headers and columns
of the instruction tree.
To change the version of the Modbus
instructions, select the version from the dropdown list. You can select the group or
individual instructions.
When you use the instruction tree to place a Modbus instruction in your program, a new FB
instance is created in the project tree. You can see new FB instance in the project tree under
PLC_x > Program blocks > System blocks > Program resources.
To verify the version of a Modbus instruction in a program, you must inspect project tree
properties and not the properties of a box displayed in the program editor. Select a project
tree Modbus FB instance, right-click, select "Properties", and select the "Information" page to
see the Modbus instruction version number.
12.5.3.1
MB_COMM_LOAD
SCL
"MB_COMM_LOAD_DB"(
REQ:=_bool_in,
PORT:=_uint_in_,
BAUD:=_udint_in_,
PARITY:=_uint_in_,
FLOW_CTRL:=_uint_in_,
RTS_ON_DLY:=_uint_in_,
RTS_OFF_DLY:=_uint_in_,
RESP_TO:=_uint_in_,
DONE=>_bool_out,
ERROR=>_bool_out_,
STATUS=>_word_out_,
MB_DB:=_fbtref_inout_);
Description
The MB_COMM_LOAD instruction configures a
PtP port for Modbus RTU protocol
communications. Modbus port hardware options:
Install up to three CMs (RS485 or RS232), plus
one CB (R4845). An instance data block is
assigned automatically when you place the
MB_COMM_LOAD instruction in your program.
638
Communication processor
12.5 Modbus communication
Table 12- 64 Data types for the parameters
Parameter and type
Data type
Description
REQ
IN
Bool
PORT
IN
Port
BAUD
IN
UDInt
PARITY
FLOW_CTRL
RTS_ON_DLY
RTS_OFF_DLY
RESP_TO
IN
IN
IN
IN
IN
UInt
UInt
UInt
UInt
UInt
Parity selection:
0 None
1 Odd
2 Even
0 (default) No delay from RTS active until the first character of the
message is transmitted
Response timeout:
Time in milliseconds allowed by MB_MASTER for the slave to respond. If
the slave does not respond in this time period, MB_MASTER will retry the
request or terminate the request with an error when the specified number
of retries has been sent.
5 ms to 65535 ms (default value = 1000 ms).
MB_DB
IN
Variant
DONE
OUT
Bool
The DONE bit is TRUE for one scan, after the last request was completed
with no error. (Version 2.0 only)
639
Communication processor
12.5 Modbus communication
Data type
Description
ERROR
OUT
Bool
The ERROR bit is TRUE for one scan, after the last request was
terminated with an error. The error code value at the STATUS parameter
is valid only during the single scan where ERROR = TRUE.
STATUS
OUT
Word
MB_COMM_LOAD is executed to configure a port for the Modbus RTU protocol. Once a port
is configured for the Modbus RTU protocol, it can only be used by either the MB_MASTER or
MB_SLAVE instructions.
One execution of MB_COMM_LOAD must be used to configure each communication port
that is used for Modbus communication. Assign a unique MB_COMM_LOAD instance DB for
each port that you use. You can install up to three communication modules (RS232 or
RS485) and one communication board (RS485) in the CPU. Call MB_COMM_LOAD from a
startup OB and execute it one time or use the first scan system flag (Page 84) to initiate the
call to execute it one time. Only execute MB_COMM_LOAD again if communication
parameters like baud rate or parity must change.
An instance data block is assigned for MB_MASTER or MB_SLAVE when you place these
instructions in your program. This instance data block is referenced when you specify the
MB_DB parameter for the MB_COMM_LOAD instruction.
Data type
Description
ICHAR_GAP
Word
RETRIES
Word
Number of retries that the master will attempt before returning the no response
error code 0x80C8.
Description
0000
No error
8180
8181
8182
8183
640
Communication processor
12.5 Modbus communication
STATUS (W#16#)
Description
8184
Invalid response timeout value (response timeout less than the 5 ms minimum)
8185
In addition to the MB_COMM_LOAD errors listed above, errors can be returned from the underlying PtP communication
instructions.
See also
Point-to-Point instructions (Page 566)
12.5.3.2
MB_MASTER
SCL
"MB_MASTER_DB"(
REQ:=_bool_in_,
MB_ADDR:=_uint_in_,
MODE:=_usint_in_,
DATA_ADDR:=_udint_in_,
DATA_LEN:=_uint_in_,
DONE=>_bool_out_,
BUSY=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
DATA_PTR:=_variant_inout_);
Description
The MB_MASTER instruction communicates as a
Modbus master using a port that was configured by
a previous execution of the MB_COMM_LOAD
instruction. An instance data block is assigned
automatically when you place the MB_MASTER
instruction in your program. This MB_MASTER
instance data block is used when you specify the
MB_DB parameter for the MB_COMM_LOAD
instruction.
Data type
Description
REQ
IN
Bool
0=No request
1= Request to transmit data to Modbus slave
MB_ADDR
IN
V1.0: USInt
V2.0: UInt
MODE
IN
USInt
DATA_ADDR
IN
UDInt
Starting Address in the slave: Specifies the starting address of the data to
be accessed in the Modbus slave. See the Modbus functions table below
for valid addresses.
DATA_LEN
IN
UInt
641
Communication processor
12.5 Modbus communication
Data type
Description
DATA_PTR
IN
Variant
DONE
OUT
Bool
The DONE bit is TRUE for one scan, after the last request was completed
with no error.
BUSY
OUT
Bool
ERROR
OUT
Bool
The ERROR bit is TRUE for one scan, after the last request was
terminated with an error. The error code value at the STATUS parameter
is valid only during the single scan where ERROR = TRUE.
STATUS
OUT
Word
642
Communication processor
12.5 Modbus communication
REQ parameter
0 = No request; 1 = Request to transmit data to Modbus Slave
You may control this input either through the use of a level or edge triggered contact.
Whenever this input is enabled, a state machine is started to ensure that no other
MB_MASTER using the same instance DB is allowed to issue a request, until the current
request is completed. All other input states are captured and held internally for the current
request, until the response is received or an error detected.
If the same instance of MB_MASTER is executed again with REQ input = 1 before the
completion of the current request, then no subsequent transmissions are made. However,
when the request is completed, a new request is issued whenever MB_MASTER is executed
again with REQ input = 1.
Modbus
Function
Data length
Modbus
Address
01
1 to 2000
1 to 1992 1
1 to 9999
02
1 to 2000
1 to 1992 1
10001 to 19999
03
1 to 125
1 to 124 1
40001 to 49999 or
400001 to 465535
04
1 to 125
1 to 124 1
30001 to 39999
05
1 to 9999
06
40001 to 49999 or
400001 to 465535
15
2 to 1968
2 to 1960 1
1 to 9999
16
2 to 123
2 to 122 1
40001 to 49999 or
400001 to 465535
15
1 to 1968
2 to 1960 1
1 to 9999
16
1 to 123
1 to 122 1
40001 to 49999 or
400001 to 465535
643
Communication processor
12.5 Modbus communication
MODE
Modbus
Function
Data length
Modbus
Address
11
11
80
08
81
08
3 to 10,
12 to 79,
82 to 255
1
Reserved
For "Extended Addressing" mode the maximum data lengths are reduced by 1 byte or 1 word depending upon the data
type used by the function.
DATA_PTR parameter
The DATA_PTR parameter points to the DB or M address that is written to or read from. If
you use a data block, then you must create a global data block that provides data storage for
reads and writes to Modbus slaves.
Note
The DATA_PTR data block type must allow direct addressing
The data block must allow both direct (absolute) and symbolic addressing. When you create
the data block the "Standard" access attribute must be selected.
644
Communication processor
12.5 Modbus communication
Blocked_Proc_T Real
imeout
3.0
Extended_Addr
essing
False
Bool
Description
Amount of time (in seconds) to wait for a blocked Modbus Master instance
before removing this instance as being ACTIVE. This can occur, for example,
when a Master request has been issued and then the program stops calling
the Master function before it has completely finished the request. The time
value must be greater than 0 and less than 55 seconds, or an error occurs.
The default value is .5 seconds.
Configures single or double-byte slave addressing. The default value = 0.
(0=single byte address, 1=double-byte address)
645
Communication processor
12.5 Modbus communication
Condition codes
Table 12- 71 MB_MASTER execution condition codes (communication and configuration errors) 1
STATUS (W#16#)
Description
0000
No error
80C8
80D1
The receiver issued a flow control request to suspend an active transmission and never reenabled the transmission during the specified wait time.
This error is also generated during hardware flow control when the receiver does not assert
CTS within the specified wait time.
80D2
The transmit request was aborted because no DSR signal is received from the DCE.
80E0
80E1
80E2
80E3
80E4
The message was terminated as a result of the specified length exceeding the total buffer size.
8180
8186
8188
8189
818A
818B
818C
Invalid pointer for DATA_PTR or invalid Blocked_Proc_Timeout: The data area must be a DB
(that allows both symbolic and direct access) or a M memory.
8200
8380
CRC error
8381
01
8382
03
8383
02
8384
Greater than 03
8385
03
8386
Function code in the response does not match the code in the request.
8387
8388
In addition to the MB_MASTER errors listed above, errors can be returned from the underlying PtP communication
instructions.
646
Communication processor
12.5 Modbus communication
See also
Point-to-Point instructions (Page 566)
12.5.3.3
MB_SLAVE
SCL
Description
"MB_SLAVE_DB"(
MB_ADDR:=_uint_in_,
NDR=>_bool_out_,
DR=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
MB_HOLD_REG:=_variant_inout_);
IN
Data type
Description
V1.0: USInt
V2.0: UInt
MB_HOLD_REG
IN
Variant
NDR
OUT
Bool
DR
OUT
Bool
0 No new data
Data Read:
0 No data read
ERROR
OUT
Bool
The ERROR bit is TRUE for one scan, after the last request was
terminated with an error. If execution is terminated with an error,
then the error code value at the STATUS parameter is valid only
during the single scan where ERROR = TRUE.
STATUS
OUT
Word
Modbus communication function codes (1, 2, 4, 5, and 15) can read and write bits and words
directly in the input process image and output process image of the CPU. For these function
codes, the MB_HOLD_REG parameter must be defined as a data type larger than a byte.
The following table shows the example mapping of Modbus addresses to the process image
in the CPU.
647
Communication processor
12.5 Modbus communication
Table 12- 75 Mapping of Modbus addresses to the process image
Modbus functions
S7-1200
Codes
Function
Data area
Address range
Data area
CPU address
01
Read bits
Output
to
8192
Q0.0 to Q1023.7
02
Read bits
Input
10001
to
18192
I0.0 to I1023.7
04
30001
to
30512
IW0 to IW1022
05
Write bit
Output
to
8192
Q0.0 to Q1023.7
15
Write bits
Output
to
8192
Q0.0 to Q1023.7
Modbus communication function codes (3, 6, 16) use a Modbus holding register which can
be a M memory address range or a data block. The type of holding register is specified by
the MB_HOLD_REG parameter on the MB_SLAVE instruction.
Note
MB_HOLD_REG data block type
A Modbus holding register data block must allow both direct (absolute) and symbolic
addressing. When you create the data block the "Standard" access attribute must be
selected.
The following table shows examples of Modbus address to holding register mapping that is
used for Modbus function codes 03 (read words), 06 (write word), and 16 (write words). The
actual upper limit of DB addresses is determined by the maximum work memory limit and M
memory limit, for each CPU model.
Table 12- 76 Mapping of Modbus addresses to CPU memory
Modbus Master
Address
MW100
DB10.DBw0
MW120
DB10.DBW50
"Recipe".ingredient
40001
MW100
DB10.DBW0
MW120
DB10.DBW50
"Recipe".ingredient[1]
40002
MW102
DB10.DBW2
MW122
DB10.DBW52
"Recipe".ingredient[2]
40003
MW104
DB10.DBW4
MW124
DB10.DBW54
"Recipe".ingredient[3]
40004
MW106
DB10.DBW6
MW126
DB10.DBW56
"Recipe".ingredient[4]
40005
MW108
DB10.DBW8
MW128
DB10.DBW58
"Recipe".ingredient[5]
Sub-function
Description
0000H
Return query data echo test: The MB_SLAVE will echo back to a Modbus master a
word of data that is received.
648
Communication processor
12.5 Modbus communication
000AH
11
Clear communication event counter: The MB_SLAVE will clear out the communication
event counter that is used for Modbus function 11.
Get communication event counter: The MB_SLAVE uses an internal communication
event counter for recording the number of successful Modbus read and write requests
that are sent to the Modbus slave. The counter does not increment on any Function 8,
Function 11, or broadcast requests. It is also not incremented on any requests that
result in a communication error (for example, parity or CRC errors).
The MB_SLAVE instruction supports broadcast write requests from any Modbus master as
long as the request is for accessing valid addresses. MB_SLAVE will produce error code
0x8188 for function codes not supported in broadcast.
649
Communication processor
12.5 Modbus communication
$'5
)&
'DWD
5HVSRQVH
WLPHRXWSHULRG
&5&
0DVWHUVHQGV
6WDUW
&5& LQWHUYDO FKDUDFWHUWLPHV
$'5
6ODYHVHQGV
5HVSRQVH
GHOD\WLPH
$'5
)&
6WDUW
&5& LQWHUYDO
'DWD
The response timeout period RESP_TO is the amount of time a Modbus master waits for the
start of a response from a Modbus slave. This time period is not defined by the Modbus
protocol, but is a parameter of each Modbus master. The frequency of execution (the time
between one execution and the next execution) of MB_SLAVE must be based on the
particular parameters of your Modbus master. At a minimum, you should execute
MB_SLAVE twice within the response timeout period of the Modbus master.
Data type
Description
HR_Start_Offset
Word
Extended_Addressing
Bool
Request_Count
Word
Slave_Message_Count
Word
Bad_CRC_Count
Word
Broadcast_Count
Word
Exception_Count
Word
Success_Count
Word
The number of requests received for this specific slave that have no protocol
errors
Your program can write values to the HR_Start_Offset and Extended_Addressing variables
and control Modbus slave operations. The other variables can be read to monitor Modbus
status.
650
Communication processor
12.5 Modbus communication
HR_Start_Offset
Modbus holding register addresses begin at 40001 or 400001. These addresses correspond
to the beginning PLC memory address of the holding register. However, you can configure
the "HR_Start_Offset" variable to start the beginning Modbus holding register address at
another value instead of 40001 or 400001.
For example, if the holding register is configured to start at MW100 and is 100 words long.
An offset of 20 specifies a beginning holding register address of 40021 instead of 40001.
Any address below 40021 and above 400119 will result in an addressing error.
Table 12- 79 Example of Modbus holding register addressing
HR_Start_Offset
0
20
Address
Minimum
Maximum
40001
40099
S7-1200 address
MW100
MW298
40021
40119
S7-1200 address
MW100
MW298
HR_Start_Offset is a word value that specifies the starting address of the Modbus holding
register and is stored in the MB_SLAVE instance data block. You can set this public static
variable value by using the parameter helper drop-list, after MB_SLAVE is placed in your
program.
For example, after MB_SLAVE is placed in a LAD network, you can go to a previous network
and assign the HR_Start_Offset value. The value must be assigned prior to execution of
MB_SLAVE.
Entering a Modbus slave variable using the
default DB name:
1. Set the cursor in the parameter field and
type an m character.
2. Select "MB_SLAVE_DB" from the drop-list.
3. Set the cursor at the right side of the DB
name (after the quote character) and enter
a period character.
4. Select "MB_SLAVE_DB.HR_Start_Offset"
from the drop list.
651
Communication processor
12.5 Modbus communication
Extended_Addressing
The Extended_Addressing variable is accessed in a similar way as the HR_Start_Offset
reference discussed above except that the Extended_Addressing variable is a boolean
value. The boolean value must be written by an output coil and not a move box.
Modbus slave addressing can be configured to be either a single byte (which is the Modbus
standard) or double byte. Extended addressing is used to address more than 247 devices
within a single network. Selecting extended addressing allows you to address a maximum of
64000 addresses. A Modbus function 1 frame is shown below as an example.
Table 12- 80 Single-byte slave address (byte 0)
Function 1
Byte 0
Request
Slave addr.
Byte 1
F code
Byte 2
Byte 3
Valid Response
Slave addr.
F code
Length
Error response
Slave addr.
0x81
E code
Byte 4
Start address
Byte 5
Length of coils
Coil data
Byte 1
Byte 2
Byte 3
Byte 4
Request
Slave address
F code
Valid Response
Slave address
F code
Length
Error response
Slave address
0x81
E code
Byte 5
Start address
Byte 6
Length of coils
Coil data
Condition codes
Table 12- 82 MB_SLAVE execution condition codes (communication and configuration errors) 1
STATUS (W#16#)
Description
80D1
The receiver issued a flow control request to suspend an active transmission and never reenabled the transmission during the specified wait time.
This error is also generated during hardware flow control when the receiver does not assert
CTS within the specified wait time.
80D2
The transmit request was aborted because no DSR signal is received from the DCE.
80E0
80E1
80E2
80E3
80E4
The message was terminated as a result of the specified length exceeding the total buffer
size.
8180
8186
8187
818C
Invalid MB_HOLD_REG pointer to M memory or DB (DB area must allow both symbolic and
direct address)
652
Communication processor
12.5 Modbus communication
Table 12- 83 MB_SLAVE execution condition codes (Modbus protocol errors) 1
STATUS (W#16#)
8380
No response
CRC error
8381
01
8382
03
8383
02
8384
03
8385
03
In addition to the MB_SLAVE errors listed above, errors can be returned from the underlying PtP communication
instructions.
See also
Point-to-Point instructions (Page 566)
12.5.3.4
One MB_MASTER instruction is used in the program cycle OB to communicate with a single
slave. Additional MB_MASTER instructions can be used in the program cycle OB to
communicate with other slaves, or one MB_MASTER FB could be re-used to communicate
with additional slaves.
653
Communication processor
12.5 Modbus communication
Network 2 Read 100 words from the slave holding register.
Network 3 This is an optional network that just shows the values of the first 3 words once the
read operation is done.
Network 4 Write 64 bits to the output image register starting at slave address Q2.0.
12.5.3.5
654
Communication processor
12.6 Telecontrol and TeleService with the CP 1242-7
Network 1 Initialize the RS485 module parameters each time they are changed by an HMI
device.
MB_SLAVE shown below is placed in a cyclic OB that is executed every 10ms. While this
does not give the absolute fastest response by the slave, it does provide good performance
at 9600 baud for short messages (20 bytes or less in the request).
Network 2 Check for Modbus master requests during each scan. The Modbus holding
register is configured for 100 words starting at MW1000.
12.6
12.6.1
655
Communication processor
12.6 Telecontrol and TeleService with the CP 1242-7
The CP 1242-7 supports the following services for communication via the GSM network:
GPRS (General Packet Radio Service)
The packet-oriented service for data transmission "GPRS" is handled via the GSM
network.
SMS (Short Message Service)
The CP 1242-7 can receive and send SMS messages. The communications partner can
be a mobile phone or an S7-1200.
The CP 1242-7 is suitable for use in industry worldwide and supports the following frequency
bands:
850 MHz
900 MHz
1 800 MHz
1 900 MHz
Requirements
The equipment used in the stations or the control center depends on the particular
application.
For communication with or via a central control room, the control center requires a PC
with Internet access.
Apart from the station equipment, a remote S7-1200 station with a CP 1242-7 must meet
the following requirements to be able to communicate via the GSM network:
A contract with a suitable GSM network provider
If GPRS is used, the contract must allow the use of the GPRS service.
If there is to be direct communication between stations only via the GSM network, the
GSM network provider must assign a fixed IP address to the CPs. In this case,
communication between stations is not via the control center.
The SIM card belonging to the contract
The SIM card is inserted in the CP 1242-7.
Local availability of a GSM network in the range of the station
656
Communication processor
12.6 Telecontrol and TeleService with the CP 1242-7
12.6.2
Telecontrol applications
Sending messages by SMS
Via the CP 1242-7, the CPU of a remote S7-1200 station can receive SMS messages
from the GSM network or send messages by SMS to a configured mobile phone or an
S7-1200.
Communication with a control center
Remote S7-1200 stations communicate via the GSM network and the Internet with a
telecontrol server in the master station. For data transfer using GPRS, the
"TELECONTROL SERVER BASIC" application is installed on the telecontrol server in the
master station. The telecontrol server communicates with a higher-level central control
system using the integrated OPC server function.
Communication between S7-1200 stations via a GSM network
Communication between remote stations with a CP 1242-7 can be handled in two
different ways:
Inter-station communication via a master station
In this configuration, a permanent secure connection between S7-1200 stations that
communicate with each other and the telecontrol server is established in the master
station. Communication between the stations is via the telecontrol server. The
CP 1242-7 operates in "Telecontrol" mode.
Direct communication between the stations
For direct communication between stations without the detour via the master station,
SIM cards with a fixed IP address are used that allow the stations to address each
other directly. The possible communications services and security functions (for
example VPN) depend on what is offered by the network provider. The CP 1242-7
operates in "GPRS direct" mode.
657
Communication processor
12.6 Telecontrol and TeleService with the CP 1242-7
12.6.3
Electrical connections
Power supply of the CP 1242-7
The CP has a separate connection for the external 24 VDC power supply.
Wireless interface for the GSM network
An extra antenna is required for GSM communication. This is connected via the SMA
socket of the CP.
658
Communication processor
12.6 Telecontrol and TeleService with the CP 1242-7
Further information
The CP 1242-7 manual contains detailed information. You will find this on the Internet on the
pages of Siemens Industrial Automation Customer Support under the following entry ID:
42330276 (http://support.automation.siemens.com/WW/view/en/42330276)
12.6.4
Accessories
Figure 12-1
Short name
ANT794-4MR
Order no.
6NH9 860-1AA00
Explanation
Quadband antenna (900, 1800/1900 MHz, UMTS);
weatherproof for indoor and outdoor areas; 5 m
connecting cable connected permanently to the
antenna; SMA connector, including installation
bracket, screws, wall plugs
Figure 12-2
659
Communication processor
12.6 Telecontrol and TeleService with the CP 1242-7
Short name
Order no.
ANT794-3M
Explanation
6NH9 870-1AA00
Further information
You will find detailed information in the device manual. You will find this on the Internet on
the pages of Siemens Industrial Automation Customer Support under the following entry ID:
23119005 (http://support.automation.siemens.com/WW/view/en/23119005)
12.6.5
*356
6WDWLRQ
Figure 12-3
0RELOHSKRQH
RU6VWDWLRQ
6ZLWK
&3"
A SIMATIC S7-1200 with a CP 1242-7 can send messages by SMS to a mobile phone or a
configured S7-1200 station.
660
Communication processor
12.6 Telecontrol and TeleService with the CP 1242-7
'6/URXWHU
,QWHUQHW
,QGXVWULDO(WKHUQHW
*356
6WDWLRQ
6ZLWK
&3
Figure 12-4
6WDWLRQ
6ZLWK
0'
6WDWLRQ
6ZLWK
&3
661
Communication processor
12.6 Telecontrol and TeleService with the CP 1242-7
*356
&3ZLWKIL[HG
,3DGGUHVV
6WDWLRQ
6ZLWK
&3"
Figure 12-5
&3ZLWKIL[HG
,3DGGUHVV
6WDWLRQ
6ZLWK
&3"
In this configuration, two SIMATIC S7-1200 stations communicate directly with each other
using the CP 1242-7 via the GSM network. Each CP 1242-7 has a fixed IP address. The
relevant service of the GSM network provider must allow this.
662
Communication processor
12.6 Telecontrol and TeleService with the CP 1242-7
(QJLQHHULQJVWDWLRQ
ZLWK67(3
7HOHFRQWUROVHUYHUZLWKDSSOLFDWLRQ
7(/(&21752/6(59(5%$6,&
,QWHUQHW
'6/URXWHU
*356
,QGXVWULDO(WKHUQHW
6WDWLRQ
Figure 12-6
6ZLWK
&3
663
Communication processor
12.6 Telecontrol and TeleService with the CP 1242-7
(QJLQHHULQJVWDWLRQ
ZLWK67(3"
7HOH6HUYLFHJDWHZD\
,QWHUQHW
'6/URXWHU
*356
,QGXVWULDO(WKHUQHW
6WDWLRQ
Figure 12-7
6ZLWK
&3"
664
13
LAD / FBD
SCL
Description
"TM_MAIL_DB"(
REQ:=_bool_in_,
ID:=_int_in_,
TO_S:=_string_in_,
CC:=_string_in_,
SUBJECT:=_string_in_,
TEXT:= _string_in_,
ATTACHMENT:=_variant_in_,
BUSY=>_bool_out_,
DONE=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,);
STEP 7 automatically creates the instance DB when you insert the instruction.
You start sending an email with a positive edge change from 0 to 1, at input parameter REQ.
The following table shows the relationship between BUSY, DONE and ERROR. You can
monitor the progress of TM_MAIL execution and detect completion, by evaluating these
parameters in successive calls.
The output parameters DONE, ERROR, STATUS, and SFC_STATUS are valid for only one
cycle, when the state of the output parameter BUSY changes from 1 to 0. Your program
logic must save temporary output state values, so you can detect state changes in
subsequent program execution cycles.
Table 13- 2
DONE
BUSY
ERROR
Description
Irrelevant
Irrelevant
Job is in progress.
The job was terminated with an error. For the cause of the error, refer to the
STATUS parameter.
No job in progress
665
Data consistency
The input parameter ADDR_MAIL_SERVER is read when the operation is started. A new
value does not take effect until the current operation is complete and a new TM_MAIL
operation is initiated.
In contrast, the parameters WATCH_DOG_TIME, TO_S, CC, FROM, SUBJECT, TEXT,
ATTACHMENT, USERNAME and PASSWORD are read during the execution of TM_MAIL
and may be changed only when the job is finished (BUSY = 0)
Data types
Description
REQ
IN
Bool
ID
IN
Int
TO_S
IN
String
666
Data types
Description
CC
IN
String
SUBJECT
IN
String
TEXT
IN
String
ATTACHMENT
IN
Variant
DONE
BUSY
OUT
OUT
Bool
Bool
0 - No operation in progress
1- Operation in progress
ERROR
OUT
Bool
The ERROR bit =1 for one scan, after the last request was
terminated with an error. The error code value at the
STATUS output is valid only during the single scan where
ERROR = 1.
STATUS
OUT
Word
ADDR_MAIL_SERVER
DWord
Static
WATCH_DOG_TIME
1 Static
Time
192 = 16#C0,
168 =16#A8
0 = 16#00
10 = 16#0A
USERNAME
1 Static
String
PASSWORD
1 Static
String
667
Data types
Description
FROM
1 Static
String
SFC_STATUS
1 Static
Word
The values of these parameters are not modified at every call of TM_MAIL. The values are assigned in the TM_MAIL
instance data block and are only referenced once, on the first call of TM_MAIL.
SMTP authentication
TM_MAIL supports the SMTP AUTH LOGIN authentication method. For information on this
authentication method, please refer to the manual of the mail server or the website of your
internet service provider.
The AUTH LOGIN authentication method uses the TM_MAIL USERNAME and PASSWORD
parameters to connect with the mail server. The user name and password must be
previously set up on an email account at an email server.
If no value is assigned for the USERNAME parameter, then the AUTH LOGIN authentication
method is not used and the email is sent without authentication.
668
Note
Email server requirements
TM_MAIL can only communicate with an email server using SMTP via port 25. The assigned
port number cannot be changed.
Most IT departments and external email servers now block port 25 to prevent a PC infected
with a virus from becoming a rogue email generator.
You can connect to an internal mail server via SMTP and let the internal server manage the
current security enhancements that are required to relay email through the Internet to an
external mail server.
669
Condition codes
STATUS
SFC_STATUS
(W#16#...):
(W#16#...):
0000
The TM_MAIL operation completed without error. This zero STATUS code does
not guarantee that an email was actually sent (See the first item in the note
following this table).
7001
7002
7002
8xxx
xxxx
8010
xxxx
Failed to connect: For more information about the SFC_STATUS parameter, see
the STATUS parameter of the TCON instruction.
8011
xxxx
Error sending data: For more information about SFC_STATUS parameter ,see
the STATUS parameter of the TSEND instruction.
8012
xxxx
Error while receiving data: For more information about the SFC_STATUS
parameter, see the STATUS parameter descriptions of the TRCV instruction.
8013
xxxx
8014
Failed to connect: You may have entered an incorrect mail server IP address
(ADDR_MAIL_SERVER) or too little time (WATCH_DOG_TIME) for the
connection. It is also possible that the CPU has no connection to the network or
the CPU configuration is incorrect.
82xx, 84xx,
85xx
The error message comes from the mail server and corresponds to error number
"8" of the SMTP protocol. See the second item in the note following this table.
8450
Operation does not run: Mailbox is not available; try again later.
Description
8451
8500
Command syntax error: The cause may be that the email server does not
support the LOGIN authentication process. Check the parameters of TM_MAIL.
Try to send an email without authentication. Try replacing the parameter
USERNAME with an empty string.
8501
Syntax error: Incorrect parameter or argument; you may have typed an incorrect
address in the TO_S or CC parameters.
8502
8535
8550
The mail server cannot be reached, or you have no access rights. You may have
entered an incorrect username or password or of your mail server does not
support log in access. Another cause of this error could be an erroneous entry of
the domain name after the "@" character in the TO_S or CC parameters.
8552
Operation aborted: Exceeded the allocated memory size; try again later.
8554
670
Note
Possible unreported email transmission errors
Incorrect entry of a recipient address does not generate a STATUS error for TM_MAIL. In
this case, there is no guarantee that additional recipients (with correct email addresses),
will receive the email.
More information on SMTP error codes can be found on the internet or in the error
documentation for the mail server. You can also read the last error message from the
mail server. The error message in stored in buffer1parameter of the instance DB for
TM_MAIL.
671
672
14
Status LEDs
The CPU and the I/O modules use LEDs to provide information about either the operational
status of the module or the I/O.
Description
STOP/RUN
Yellow / Green
ERROR
Red
MAINT
Yellow
Off
Off
Power is off
Off
Flashing
(alternating yellow and green)
Off
Stop mode
On (yellow)
Run mode
On (green)
On (yellow)
Flashing
Error
Flashing
Maintenance requested
On
673
Description
STOP/RUN
Yellow / Green
Defective hardware
On (yellow)
Flashing
(alternating yellow and green)
ERROR
Red
MAINT
Yellow
On
Off
Flashing
Flashing
The CPU also provides two LEDs that indicate the status of the PROFINET communications.
Open the bottom terminal block cover to view the PROFINET LEDs.
Link (green) turns on to indicate a successful connection
Rx/Tx (yellow) turns on to indicate transmission activity
The CPU and each digital signal module (SM) provide an I/O Channel LED for each of the
digital inputs and outputs. The I/O Channel (green) turns on or off to indicate the state of the
individual input or output.
Status LEDs on an SM
In addition, each digital SM provides a DIAG LED that indicates the status of the module:
Green indicates that the module is operational
Red indicates that the module is defective or non-operational
Each analog SM provides an I/O Channel LED for each of the analog inputs and outputs.
Green indicates that the channel has been configured and is active
Red indicates an error condition of the individual analog input or output
In addition, each analog SM provides a DIAG LED that indicates the status of the module:
Green indicates that the module is operational
Red indicates that the module is defective or non-operational
The SM detects the presence or absence of power to the module (field-side power, if
required).
Table 14- 2
Description
Field-side power is off
Not configured or update in progress
Module configured with no errors
DIAG
I/O Channel
(Red / Green)
(Red / Green)
Flashing red
Flashing red
Flashing green
Off
On (green)
On (green)
Flashing red
Flashing red
On (green)
Error condition
674
14.2
Your programming device is now connected to the CPU. The orange color frames indicate
an online connection. You can now use the Online & diagnostics tools from the Project tree
and the Online tools task card.
675
14.3
676
677
14.4
Note
This feature is available only for a CPU that either has only a MAC address (has not yet
been assigned an IP address) or has been reset to factory settings.
14.5
678
Procedure
To reset a CPU to its factory settings, follow these steps:
1. Open the Online and Diagnostics view of the CPU.
2. Select "Reset to factory settings" from the "Functions" folder.
3. Select the "Keep IP address" check box if you want to retain the IP address or the "Reset
IP address" check box if you want to delete the IP address.
4. Click the "Reset" button.
5. Acknowledge the confirmation prompt with "OK".
Result
The module is switched to STOP mode if necessary, and it is reset to the factory settings:
The work memory and internal load memory and all operand areas are cleared.
All parameters are reset to their defaults.
The diagnostics buffer is cleared.
The time of day is reset.
The IP address is retained or deleted based on the setting you made. (The MAC address
is fixed and is never changed.)
14.6
Use the CPU operating panel of the Online Tools task card to change the operating mode of
an online CPU. The Online Tools task card is accessible whenever the CPU is online.
679
14.7
14.8
680
You can also use the GET_DIAG instruction (Page 302) to collect the diagnostic information.
14.9
681
14.10
Table 14- 3
Modify
Force
Watch table
Editor
Yes
Yes
No
Force table
Yes
No
Yes
Program editor
Yes
Yes
No
Tag table
Yes
No
No
DB editor
Yes
No
No
682
14.10.1
When you have connected to the CPU, STEP 7 turns the headers of
the work areas orange.
The project tree displays a comparison of the offline project and the
online CPU. A green circle means that the CPU and the project are
synchronized, meaning that both have the same configuration and
user program.
Tag tables show the tags. Watch tables can also show the tags, as
well as direct addresses.
To monitor the execution of the user program and to display the values of the tags,
click the "Monitor all" button in the toolbar.
The "Monitor value" field shows the value for each tag.
683
14.10.2
14.10.3
684
14.10.4
685
The various functions can be selected using the buttons at the top of the watch table.
Enter the tag name to monitor and select a display format from the dropdown selection. With
an online connection to the CPU, clicking the "Monitor" button displays the actual value of
the data point in the "Monitor value" field.
14.10.4.1
Types of triggers
Trigger
Description
Permanent
Permanent: Continuously collects the data at the start of the scan cycle, after
the CPU reads the inputs
Once: Collects the data at the start of the scan cycle, after the CPU reads the
inputs
Permanent: Continuously collects the data at the end of the scan cycle, before
the CPU writes the outputs
Once: Collects the data once at the end of the scan cycle, before the CPU
writes the outputs
At transition to
STOP
686
14.10.4.2
687
14.10.5
14.10.5.1
Note
The force values are stored in the CPU and not in the force table.
You cannot force an input (or "I" address) or an output (or "Q" address). However, you can
force a peripheral input or peripheral output. The force table automatically appends a ":P" to
the address (for example: "On":P or "Run":P).
In the "Force value" cell, enter the value for the input or output to be forced. You can then
use the check box in the "Force" column to enable forcing of the input or output.
Use the "Start or replace forcing" button to force the value of the tags in the force
table. Click the "Stop forcing" button to reset the value of the tags.
In the force table, you can monitor the status of the forced value for an input. However, you
cannot monitor the forced value of an output.
You can also view the status of the forced value in the program editor.
NOTICE
When an input or output is forced in a force table, the force actions become part of the
project configuration. If you close STEP 7, the forced elements remain active in the CPU
program until they are cleared. To clear these forced elements, you must use STEP 7 to
connect with the online CPU and then use the force table to turn off or stop the force
function for those elements.
688
14.10.5.2
689
&
'
Startup
14.11
RUN
690
14.11.1
691
14.11.2
2. If the program compiles successfully, STEP 7 downloads the program to the CPU.
3. STEP 7 prompts you to load your program or cancel the operation.
4. If you click "Load", STEP 7 downloads the program to the CPU.
692
14.11.3
Note
A maximum number of ten blocks can be downloaded in RUN mode at one time. If more
than ten blocks are downloaded, the CPU must be placed into STOP mode.
693
14.11.4
694
14.11.5
695
14.11.6
696
DataLogCreate
DataLogOpen
DataLogWrite
DataLogClose
DataLogNewFile
READ_DBL
RET_VAL = W#16#82C0
WRIT_DBL
RET_VAL = W#16#82C0
RTM
RET_VAL = 0x80C0
In all cases the RLO output from the instruction will be false when the error occurs. The error
is temporary. If it occurs, the instruction should be retried later.
Note
You must not retry the operation in the current execution of the OB.
697
698
Technical specifications
A.1
Standards compliance
The S7-1200 automation system design conforms with the following standards and test
specifications. The test criteria for the S7-1200 automation system are based on these
standards and test specifications.
Note that not all S7-1200 models may be certified to these standards, and certification status
may change without notification. It is the user's responsibility to determine applicable
certifications by referring to the ratings marked on the product. Consult your local Siemens
representative if you need additional information related to the latest listing of exact
approvals by part number.
CE approval
The S7-1200 Automation System satisfies requirements and safety related objectives
according to the EC directives listed below, and conforms to the harmonized European
standards (EN) for the programmable controllers listed in the Official Journals of the
European Community.
EC Directive 2006/95/EC (Low Voltage Directive) "Electrical Equipment Designed for Use
within Certain Voltage Limits"
EN 61131-2:2007 Programmable controllers - Equipment requirements and tests
EC Directive 2004/108/EC (EMC Directive) "Electromagnetic Compatibility"
Emission standard
EN 61000-6-4:2007: Industrial Environment
Immunity standard
EN 61000-6-2:2005: Industrial Environment
EC Directive 94/9/EC (ATEX) "Equipment and Protective Systems Intended for Use in
Potentially Explosive Atmosphere"
EN 60079-15:2005: Type of Protection 'n'
The CE Declaration of Conformity is held on file available to competent authorities at:
Siemens AG
IA AS RD ST PLC Amberg
Werner-von-Siemens-Str. 50
D92224 Amberg
Germany
699
Technical specifications
A.1 General Technical Specifications
cULus approval
Underwriters Laboratories Inc. complying with:
Underwriters Laboratories, Inc.: UL 508 Listed (Industrial Control Equipment)
Canadian Standards Association: CSA C22.2 Number 142 (Process Control Equipment)
NOTICE
The SIMATIC S7-1200 series meets the CSA standard.
The cULus logo indicates that the S7-1200 has been examined and certified by
Underwriters Laboratories (UL) to standards UL 508 and CSA 22.2 No. 142.
FM approval
Factory Mutual Research (FM)
Approval Standard Class Number 3600 and 3611
Approved for use in:
Class I, Division 2, Gas Group A, B, C, D, Temperature Class T3C Ta = 60 C
Class I, Zone 2, IIC, Temperature Class T3 Ta = 60 C
Canadian Class I, Zone 2 Installation per CEC 18-150
IMPORTANT EXCEPTION: See Technical Specifications for the number of inputs or outputs
allowed on simultaneously. Some models are de-rated for Ta = 60 C.
WARNING
Substitution of components may impair the suitability for Class I, Division 2 and Zone 2.
Repair of units should only be performed by an authorized Siemens Service Center.
ATEX approval
ATEX approval applies to DC models only. ATEX approval does not apply to AC and Relay
models.
EN 60079-0:2006: Explosive Atmospheres - General Requirements
EN 60079-15:2005: Electrical Apparatus for Potentially Explosive Atmospheres;
Type of protection 'nA'
II 3 G Ex nA II T3
IMPORTANT EXCEPTION: See Technical Specifications for the number of inputs or outputs
allowed on simultaneously. Some models are de-rated for Ta = 60 C.
Install modules in a suitable enclosure providing a minimum degree of protection of IP54
according to EN 60529 and take into account the environmental conditions under which the
equipment will be used.
When the temperature under rated conditions exceed 70 C at the cable entry point, or 80 C
at the branching point of the conductors, the temperature specification of the selected cable
should be in compliance with the actual measured temperature.
700
Technical specifications
A.1 General Technical Specifications
Provisions should be made to prevent the rated voltage from being exceeded by transient
disturbances of more than 40%.
C-Tick approval
The S7-1200 automation system satisfies requirements of standards to AS/NZS 2064
(Class A).
Korea Certification
The S7-1200 automation system satisfies the requirements of the Korean Certification (KC
Mark). It has been defined as Class A Equipment and is intended for industrial applications
and has not been considered for home use.
Maritime approval
The S7-1200 products are periodically submitted for special agency approvals related to
specific markets and applications. Consult your local Siemens representative if you need
additional information related to the latest listing of exact approvals by part number.
Classification societies:
ABS (American Bureau of Shipping)
BV (Bureau Veritas)
DNV (Det Norske Veritas)
GL (Germanischer Lloyd)
LRS (Lloyds Register of Shipping)
Class NK (Nippon Kaiji Kyokai)
Industrial environments
The S7-1200 automation system is designed for use in industrial environments.
Table A- 1
Industrial environments
Application field
Industrial
EN 61000-6-4:2007
EN 61000-6-2:2005
701
Technical specifications
A.1 General Technical Specifications
Electromagnetic compatibility
Electromagnetic Compatibility (EMC) is the ability of an electrical device to operate as
intended in an electromagnetic environment and to operate without emitting levels of
electromagnetic interference (EMI) that may disturb other electrical devices in the vicinity.
Table A- 2
EN 61000-4-3
Radiated, radio-frequency,
electromagnetic field immunity test
EN 61000-4-4
Fast transient bursts
EN 6100-4-5
Surge immunity
EN 61000-4-6
Conducted disturbances
EN 61000-4-11
Voltage dips
AC systems
0% for 1 cycle, 40% for 12 cycles and 70% for 30 cycles at 60 Hz
Table A- 3
5 MHz to 30 MHz
Radiated Emissions
Environmental conditions
Table A- 4
-40 C to +70 C
25 C to 55 C, 95% humidity
Atmospheric pressure
702
Technical specifications
A.1 General Technical Specifications
Table A- 5
Operating conditions
Atmospheric pressure
Concentration of contaminants
S02: < 0.5 ppm; H2S: < 0.1 ppm; RH < 60% non-condensing
5 C to 55 C, 3 C/minute
NOTICE
For systems that must start up in the range of -20 C to 0 C, the user program should
delay energizing outputs for 10 seconds following startup.
Table A- 6
Ethernet port isolation is designed to limit hazard during short term network faults to hazardous voltages. It does not
conform to safety requirements for routine AC line voltage isolation.
Protection class
Protection Class II according to EN 61131-2 (Protective conductor not required)
Degree of protection
IP20 Mechanical Protection, EN 60529
Protects against finger contact with high voltage as tested by standard probe. External
protection required for dust, dirt, water and foreign objects of < 12.5mm in diameter.
703
Technical specifications
A.1 General Technical Specifications
Rated voltages
Table A- 7
Rated voltages
Rated voltage
Tolerance
24 VDC
120/230 VAC
NOTICE
When a mechanical contact turns on output power to the S7-1200 CPU, or any digital
signal module, it sends a "1" signal to the digital outputs for approximately 50
microseconds. This could cause unexpected machine or process operation which could
result in death or serious injury to personnel and/or damage to equipment. You must plan
for this, especially if you are using devices which respond to short duration pulses.
DC Outputs
Short circuit protection circuitry is not provided for DC outputs on CPUs, signal modules
(SMs) and signal boards (SBs).
704
Technical specifications
A.2 CPU 1211C
A.2
CPU 1211C
A.2.1
Table A- 8
General specifications
Technical data
CPU 1211C
AC/DC/Relay
CPU 1211C
DC/DC/Relay
CPU 1211C
DC/DC/DC
Order number
6ES7 211-1BE31-0XB0
6ES7 211-1HE31-0XB0
6ES7 211-1AE31-0XB0
Dimensions W x H x D (mm)
90 x 100 x 75
90 x 100 x 75
90 x 100 x 75
Shipping weight
420 grams
380 grams
370 grams
Power dissipation
10 W
8W
8W
4 mA/input used
4 mA/input used
705
Technical specifications
A.2 CPU 1211C
Table A- 9
CPU features
Technical data
User
memory1
Description
Work
30 Kbytes
Load
Retentive
10 Kbytes
6 inputs/4 outputs
2 inputs
4096 bytes
16 Kbytes for startup and program cycle (including associated FBs and
FCs)
none
1 max.
3 CMs max.
High-speed counters
3 built-in I/O, 5 with signal board, refer to table, HSC input assignments for
CPU 1211C (Page 339)
Pulse outputs 2
Edge interrupts
Memory card
+/- 60 seconds/month
The size of the user program, data, and configuration is limited by the available load memory and work memory in the
CPU. There is no specific limit to the number of OB, FC, FB and DB blocks supported or to the size of a particular block;
the only limit is due to overall memory size.
For CPU models with relay outputs, you must install a digital signal board (SB) to use the pulse outputs.
Table A- 10
Performance
Type of instruction
Execution speed
Boolean
0.08 s/instruction
Move Word
1.7 s/instruction
Real math
2.3 s/instruction
706
Technical specifications
A.2 CPU 1211C
A.2.2
Table A- 11
Element
Description
Blocks
Type
OBs
Timers
Counters
Size
30 Kbytes
Quantity
Nesting depth
16 from the program cycle or start up OB; 4 from the time delay
interrupt, time-of-day interrupt, cyclic interrupt, hardware interrupt,
time error interrupt, or diagnostic error interrupt OB
Monitoring
Program cycle
Startup
1: OB 80
1: OB 82
Type
IEC
Quantity
Storage
Type
IEC
Quantity
Storage
Time-delay and cyclic interrupts use the same resources in the CPU. You can have only a total of 4 of these interrupts
(time-delay plus cyclic interrupts). You cannot have 4 time-delay interrupts and 4 cyclic interrupts.
Table A- 12
Communication
Technical data
Description
Number of ports
Type
Ethernet
HMI device1
707
Technical specifications
A.2 CPU 1211C
Technical data
Description
Connections
Data rates
10/100 Mb/s
Transformer isolated, 1500 VAC, for short term event safety only
Cable type
CAT5e shielded
The CPU provides dedicated HMI connections to support up to 3 HMI devices. (You can have up to 2 SIMATIC Comfort
panels.) The total number of HMI is affected by the types of HMI panels in your configuration. For example, you could
have up to three SIMATIC Basic panels connected to your CPU, or you could have up to two SIMATIC Comfort panels
with one additional Basic panel.
Table A- 13
Power supply
Technical data
CPU 1211C
AC/DC/Relay
CPU 1211C
DC/DC/Relay
Voltage range
85 to 264 VAC
Line frequency
47 to 63 Hz
--
--
Input
current
60 mA at 120 VAC
30 mA at 240 VAC
300 mA at 24 VDC
300 mA at 24 VDC
900 mA at 24 VDC
900 mA at 24 VDC
20 A at 264 VAC
12 A at 28.8 VDC
12 A at 28.8 VDC
1500 VAC
Not isolated
Not isolated
0.5 mA max.
--
--
20 ms at 120 VAC
80 ms at 240 VAC
10 ms at 24 VDC
10 ms at 24 VDC
Technical data
CPU 1211C
AC/DC/Relay
CPU 1211C
DC/DC/Relay
Voltage range
Table A- 14
CPU 1211C
DC/DC/DC
Sensor power
CPU 1211C
DC/DC/DC
Not isolated
Not isolated
Not isolated
708
Technical specifications
A.2 CPU 1211C
A.2.3
Table A- 15
Technical data
Number of inputs
Type
Rated voltage
30 VDC, max.
Surge voltage
15 VDC at 2.5 mA
5 VDC at 1 mA
Isolation groups
Filter times
0.2, 0.4, 0.8, 1.6, 3.2, 6.4, and 12.8 ms (selectable in groups of 4)
6 at 60 C horizontal, 50 C vertical
Table A- 16
Digital outputs
Technical data
Number of outputs
Type
Voltage range
--
20 VDC min.
--
Current (max.)
2.0 A
0.5 A
Lamp load
30 W DC / 200 W AC
5W
ON state resistance
0.6 max.
--
10 A max.
Surge current
Overload protection
No
No
--
--
Isolation groups
--
709
Technical specifications
A.2 CPU 1211C
Technical data
1 Hz
--
10 ms max.
Not recommended 1
--
--
4 at 60 C horizontal, 50 C vertical
500 m shielded,
150 m unshielded
500 m shielded,
150 m unshielded
For CPU models with relay outputs, you must install a digital signal board (SB) to use the pulse outputs.
Depending on your pulse receiver and cable, an additional load resistor (at least 10% of rated current) may improve
pulse signal quality and noise immunity.
A.2.4
Table A- 17
Analog inputs
Analog inputs
Technical data
Description
Number of inputs
Type
Voltage (single-ended)
Full-scale range
0 to 10 V
0 to 27648
Overshoot range
10.001 to 11.759 V
27,649 to 32,511
Overflow range
11.760 to 11.852 V
32,512 to 32,767
Resolution
10 bits
35 VDC
Smoothing
Noise rejection
10, 50, or 60 Hz
Impedance
100 K
None
710
Technical specifications
A.2 CPU 1211C
A.2.4.1
Table A- 18
50 Hz
10 Hz
50 ms
50 ms
100 ms
60ms
70 ms
200 ms
200 ms
240 ms
1150 ms
400 ms
480 ms
2300 ms
Sample time
4.17 ms
5 ms
25 ms
A.2.4.2
Table A- 19
Sample time
60 Hz (16.6 ms)
4.17 ms
50 Hz (20 ms)
5 ms
10 Hz (100 ms)
25 ms
711
Technical specifications
A.2 CPU 1211C
A.2.5
Out
For additional noise
immunity, connect "M"
to chassis ground even
if not using sensor
supply.
X11
X10
Table A- 21
Pin
X10
X11 (gold)
X12
L1 / 120-240 VAC
2M
1L
N / 120-240 VAC
AI 0
DQ a.0
Functional Earth
AI 1
DQ a.1
--
DQ a.2
--
DQ a.3
1M
--
No connection
DI a.0
--
No connection
DI a.1
--
No connection
DI a.2
--
--
10
DI a.3
--
--
11
DI a.4
--
--
12
DI a.5
--
--
13
No connection
--
--
14
No connection
--
--
712
Technical specifications
A.2 CPU 1211C
Table A- 22
Out
X11
X10
Table A- 23
Pin
X10
X11 (gold)
X12
L+ / 24VDC
2M
1L
M / 24VDC
AI 0
DQ a.0
Functional Earth
AI 1
DQ a.1
--
DQ a.2
--
DQ a.3
1M
--
No connection
DI a.0
--
No connection
DI a.1
--
No connection
DI a.2
--
--
10
DI a.3
--
--
11
DI a.4
--
--
12
DI a.5
--
--
13
No connection
--
--
14
No connection
--
--
713
Technical specifications
A.2 CPU 1211C
Table A- 24
Out
X11
X10
Table A- 25
Pin
X10
X11 (gold)
X12
L+ / 24VDC
2M
3L+
M / 24VDC
AI 0
3M
Functional Earth
AI 1
DQ a.0
--
DQ a.1
--
DQ a.2
1M
--
DQ a.3
DI a.0
--
No connection
DI a.1
--
No connection
DI a.2
--
--
10
DI a.3
--
--
11
DI a.4
--
--
12
DI a.5
--
--
13
No connection
--
--
14
No connection
--
--
Note
Unused analog inputs should be shorted.
714
Technical specifications
A.3 CPU 1212C
A.3
CPU 1212C
A.3.1
Table A- 26
General
Technical data
CPU 1212C
AC/DC/Relay
CPU 1212C
DC/DC/Relay
CPU 1212C
DC/DC/DC
Order number
6ES7 212-1BE31-0XB0
6ES7 212-1HE31-0XB0
6ES7 212-1AE31-0XB0
Dimensions W x H x D (mm)
90 x 100 x 75
90 x 100 x 75
90 x 100 x 75
Shipping weight
425 grams
385 grams
370 grams
Power dissipation
11 W
9W
9W
Current available
(SM and CM bus)
1000 mA max.
(5 VDC)
1000 mA max.
(5 VDC)
1000 mA max.
(5 VDC)
300 mA max.
(sensor power)
300 mA max.
(sensor power)
300 mA max.
(sensor power)
4 mA/input used
4 mA/input used
4 mA/input used
Table A- 27
CPU features
Technical data
User memory1
Description
Work
50 Kbytes
Load
Retentive
10 Kbytes
8 inputs/6 outputs
2 inputs
4096 bytes
16 Kbytes for startup and program cycle (including associated FBs and FCs)
2 SMs max.
1 max.
3 CMs max.
High-speed counters
5 built in I/O, 6 with signal board, see table, HSC input assignments for CPU
1212C (Page 339)
Single phase: 3 at 100 kHz and 1 at 30 kHz clock rate, SB: 2 at 30 kHz
Pulse outputs 2
715
Technical specifications
A.3 CPU 1212C
Technical data
Description
Edge interrupts
Memory card
+/- 60 seconds/month
The size of the user program, data, and configuration is limited by the available load memory and work memory in the
CPU. There is no specific limit to the number of OB, FC, FB and DB blocks supported or to the size of a particular block;
the only limit is due to overall memory size.
For CPU models with relay outputs, you must install a digital signal board (SB) to use the pulse outputs.
Table A- 28
Performance
Type of instruction
Execution speed
Boolean
0.08 s/instruction
Move Word
1.7 s/instruction
Real math
2.3 s/instruction
A.3.2
Table A- 29
Element
Blocks
OBs
Timers
Description
Type
Size
50 Kbytes
Quantity
Nesting depth
16 from the program cycle or start up OB; 4 from the time delay
interrupt, time-of-day interrupt, cyclic interrupt, hardware interrupt,
time error interrupt, or diagnostic error interrupt OB
Monitoring
Program cycle
Startup
1: OB 80
1: OB 82
Type
IEC
Quantity
Storage
716
Technical specifications
A.3 CPU 1212C
Element
Description
Counters
IEC
Quantity
Storage
Time-delay and cyclic interrupts use the same resources in the CPU. You can have only a total of 4 of these interrupts
(time-delay plus cyclic interrupts). You cannot have 4 time-delay interrupts and 4 cyclic interrupts.
Table A- 30
Communication
Technical data
Description
Number of ports
Type
Ethernet
HMI
Type
device1
Connections
Data rates
10/100 Mb/s
Transformer isolated, 1500 VAC, for short term event safety only
Cable type
CAT5e shielded
The CPU provides dedicated HMI connections to support up to 3 HMI devices. (You can have up to 2 SIMATIC Comfort
panels.) The total number of HMI is affected by the types of HMI panels in your configuration. For example, you could
have up to three SIMATIC Basic panels connected to your CPU, or you could have up to two SIMATIC Comfort panels
with one additional Basic panel.
Table A- 31
Power supply
Technical data
CPU 1212C
AC/DC/Relay
CPU 1212C
DC/DC/Relay
Voltage range
85 to 264 VAC
Line frequency
CPU 1212C
DC/DC/DC
47 to 63 Hz
--
--
CPU only
80 mA at 120 VAC
40 mA at 240 VAC
400 mA at 24 VDC
400 mA at 24 VDC
1200 mA at 24 VDC
1200 mA at 24 VDC
20 A at 264 VAC
12 A at 28.8 VDC
12 A at 28.8 VDC
1500 VAC
Not isolated
Not isolated
0.5 mA max.
--
--
Input current
(max. load)
717
Technical specifications
A.3 CPU 1212C
Technical data
CPU 1212C
AC/DC/Relay
CPU 1212C
DC/DC/Relay
CPU 1212C
DC/DC/DC
20 ms at 120 VAC
80 ms at 240 VAC
10 ms at 24 VDC
10 ms at 24 VDC
Technical data
CPU 1212C
AC/DC/Relay
CPU 1212C
DC/DC/Relay
CPU 1212C
DC/DC/DC
Voltage range
Table A- 32
Sensor power
Not isolated
Not isolated
Not isolated
A.3.3
Table A- 33
Technical data
Number of inputs
Type
Rated voltage
30 VDC, max.
Surge voltage
15 VDC at 2.5 mA
5 VDC at 1 mA
Isolation groups
Filter times
0.2, 0.4, 0.8, 1.6, 3.2, 6.4, and 12.8 ms (selectable in groups of 4)
Single phase: 100 KHz (Ia.0 to Ia.5) and 30 KHz (Ia.6 to Ia.7)
Quadrature phase: 80 KHz (Ia.0 to Ia.5) and 20 KHz (Ia.6 to Ia.7)
718
Technical specifications
A.3 CPU 1212C
Table A- 34
Digital outputs
Technical data
CPU 1212C
DC/DC/DC
Number of outputs
Type
Voltage range
--
20 VDC min.
--
Current (max.)
2.0 A
0.5 A
Lamp load
30 W DC / 200 W AC
5W
ON state resistance
0.6 max.
--
10 A max.
Surge current
Overload protection
No
No
--
--
Isolation groups
--
10 ms max.
10 ms max.
50 s max., off to on
200 s max., on to off
1 Hz
Not recommended
-1
--
--
500 m shielded,
150 m unshielded
500 m shielded,
150 m unshielded
For CPU models with relay outputs, you must install a digital signal board (SB) to use the pulse outputs.
Depending on your pulse receiver and cable, an additional load resistor (at least 10% of rated current) may improve
pulse signal quality and noise immunity.
719
Technical specifications
A.3 CPU 1212C
A.3.4
Table A- 35
Analog inputs
Analog inputs
Technical data
Description
Number of inputs
Type
Voltage (single-ended)
Full-scale range
0 to 10 V
0 to 27648
Overshoot range
10.001 to 11.759 V
27,649 to 32,511
Overflow range
11.760 to 11.852 V
32,512 to 32,767
Resolution
10 bits
35 VDC
Smoothing
Noise rejection
10, 50, or 60 Hz
Impedance
100 K
None
A.3.4.1
Table A- 36
50 Hz
10 Hz
50 ms
50 ms
100 ms
60ms
70 ms
200 ms
200 ms
240 ms
1150 ms
400 ms
480 ms
2300 ms
Sample time
4.17 ms
5 ms
25 ms
720
Technical specifications
A.3 CPU 1212C
A.3.4.2
Table A- 37
A.3.5
Sample time
60 Hz (16.6 ms)
4.17 ms
50 Hz (20 ms)
5 ms
10 Hz (100 ms)
25 ms
Out
X11
X10
Table A- 39
Pin
X10
X11 (gold)
X12
L1 / 120-240 VAC
2M
1L
N / 120-240 VAC
AI 0
DQ a.0
Functional Earth
AI 1
DQ a.1
--
DQ a.2
--
DQ a.3
1M
--
2L
DI a.0
--
DQ a.4
DI a.1
--
DQ a.5
721
Technical specifications
A.3 CPU 1212C
Pin
X10
X11 (gold)
X12
DI a.2
--
--
10
DI a.3
--
--
11
DI a.4
--
--
12
DI a.5
--
--
13
DI a.6
--
--
14
DI a.7
--
--
Table A- 40
Out
X11
X10
Table A- 41
Pin
X10
X11 (gold)
X12
L+ / 24VDC
2M
1L
M / 24VDC
AI 0
DQ a.0
Functional Earth
AI 1
DQ a.1
--
DQ a.2
--
DQ a.3
1M
--
2L
DI a.0
--
DQ a.4
DI a.1
--
DQ a.5
DI a.2
--
--
10
DI a.3
--
--
722
Technical specifications
A.3 CPU 1212C
Pin
X10
X11 (gold)
X12
11
DI a.4
--
--
12
DI a.5
--
--
13
DI a.6
--
--
14
DI a.7
--
--
Table A- 42
Out
X11
X10
Table A- 43
Pin
X10
X11 (gold)
X12
L+ / 24VDC
2M
3L+
M / 24VDC
AI 0
3M
Functional Earth
AI 1
DQ a.0
--
DQ a.1
--
DQ a.2
1M
--
DQ a.3
DI a.0
--
DQ a.4
DI a.1
--
DQ a.5
DI a.2
--
--
10
DI a.3
--
--
11
DI a.4
--
--
12
DI a.5
--
--
723
Technical specifications
A.4 CPU 1214C
Pin
X10
X11 (gold)
X12
13
DI a.6
--
--
14
DI a.7
--
--
Note
Unused analog inputs should be shorted.
A.4
CPU 1214C
A.4.1
Table A- 44
General
Technical data
CPU 1214C
AC/DC/Relay
CPU 1214C
DC/DC/Relay
CPU 1214C
DC/DC/DC
Order number
6ES7 214-1BG31-0XB0
6ES7 214-1HG31-0XB0
6ES7 214-1AG31-0XB0
Dimensions W x H x D (mm)
110 x 100 x 75
110 x 100 x 75
110 x 100 x 75
Shipping weight
475 grams
435 grams
415 grams
Power dissipation
14 W
12 W
12 W
1600 mA max.
(5 VDC)
1600 mA max.
(5 VDC)
1600 mA max.
(5 VDC)
400 mA max.
(sensor power)
400 mA max.
(sensor power)
400 mA max.
(sensor power)
4 mA/input used
4 mA/input used
4 mA/input used
Table A- 45
CPU features
Technical data
User
memory1
Description
Work
75 Kbytes
Load
Retentive
10 Kbytes
14 inputs/10 outputs
2 inputs
8192 bytes
724
Technical specifications
A.4 CPU 1214C
Technical data
Description
16 Kbytes for startup and program cycle (including associated FBs and FCs)
8 SMs max.
1 max.
3 CMs max.
High-speed counters
Pulse outputs
14
Edge interrupts
Memory card
+/- 60 seconds/month
The size of the user program, data, and configuration is limited by the available load memory and work memory in the
CPU. There is no specific limit to the number of OB, FC, FB and DB blocks supported or to the size of a particular block;
the only limit is due to overall memory size.
For CPU models with relay outputs, you must install a digital signal board (SB) to use the pulse outputs.
Table A- 46
Performance
Type of instruction
Execution speed
Boolean
0.08 s/instruction
Move Word
1.7 s/instruction
Real math
2.3 s/instruction
A.4.2
Table A- 47
Element
Blocks
Description
Type
Size
64 Kbytes
Quantity
Nesting depth
16 from the program cycle or start up OB; 4 from the time delay
interrupt, time-of-day interrupt, cyclic interrupt, hardware interrupt,
time error interrupt, or diagnostic error interrupt OB
725
Technical specifications
A.4 CPU 1214C
Element
Description
OBs
Timers
Counters
Program cycle
Startup
1: OB 80
1: OB 82
Type
IEC
Quantity
Storage
Type
IEC
Quantity
Storage
Time-delay and cyclic interrupts use the same resources in the CPU. You can have only a total of 4 of these interrupts
(time-delay plus cyclic interrupts). You cannot have 4 time-delay interrupts and 4 cyclic interrupts.
Table A- 48
Communication
Technical data
Description
Number of ports
Type
Ethernet
HMI
Monitoring
device1
Connections
Data rates
10/100 Mb/s
Transformer isolated, 1500 VAC, for short term event safety only
Cable type
CAT5e shielded
The CPU provides dedicated HMI connections to support up to 3 HMI devices. (You can have up to 2 SIMATIC Comfort
panels.) The total number of HMI is affected by the types of HMI panels in your configuration. For example, you could
have up to three SIMATIC Basic panels connected to your CPU, or you could have up to two SIMATIC Comfort panels
with one additional Basic panel.
726
Technical specifications
A.4 CPU 1214C
Table A- 49
Power supply
Technical data
CPU 1214C
AC/DC/Relay
CPU 1214C
DC/DC/Relay
Voltage range
85 to 264 VAC
Line frequency
47 to 63 Hz
--
CPU only
500 mA at 24 VDC
1500 mA at 24 VDC
20 A at 264 VAC
12 A at 28.8 VDC
1500 VAC
Not isolated
0.5 mA max.
20 ms at 120 VAC
80 ms at 240 VAC
10 ms at 24 VDC
Input current
(max. load)
Table A- 50
CPU 1214C
DC/DC/DC
Sensor power
Technical data
CPU 1214C
AC/DC/Relay
CPU 1214C
DC/DC/Relay
CPU 1214C
DC/DC/DC
Voltage range
Not isolated
A.4.3
Table A- 51
Technical data
CPU 1214C
AC/DC/Relay
Number of inputs
14
Type
Rated voltage
30 VDC, max.
Surge voltage
15 VDC at 2.5 mA
5 VDC at 1 mA
CPU 1214C
DC/DC/Relay
CPU 1214C
DC/DC/DC
727
Technical specifications
A.4 CPU 1214C
Technical data
CPU 1214C
AC/DC/Relay
Isolation groups
Filter times
0.2, 0.4, 0.8, 1.6, 3.2, 6.4, and 12.8 ms (selectable in groups of 4)
Single phase: 100 KHz (Ia.0 to Ia.5) and 30 KHz (Ia.6 to Ib.5)
Quadrature phase: 80 KHz (Ia.0 to Ia.5) and 20 KHz (Ia.6 to Ib.5)
14 at 55 C horizontal or 45 C vertical
Table A- 52
CPU 1214C
DC/DC/Relay
CPU 1214C
DC/DC/DC
Digital outputs
Technical data
CPU 1214C
DC/DC/DC
Number of outputs
10
10
Type
Voltage range
--
20 VDC min.
--
Current (max.)
2.0 A
0.5 A
Lamp load
30 W DC / 200 W AC
5W
ON state resistance
0.6 max.
--
10 A max.
Surge current
Overload protection
No
No
--
--
Isolation groups
--
L+ minus 48 VDC,
1 W dissipation
10 ms max.
10 ms max.
50 s max., off to on
200 s max., on to off
1 Hz
Not recommended
--
--
728
Technical specifications
A.4 CPU 1214C
Technical data
10 at 55 C horizontal or 45 C vertical
CPU 1214C
DC/DC/DC
For CPU models with relay outputs, you must install a digital signal board (SB) to use the pulse outputs.
Depending on your pulse receiver and cable, an additional load resistor (at least 10% of rated current) may improve
pulse signal quality and noise immunity.
A.4.4
Table A- 53
Analog inputs
Analog inputs
Technical data
Description
Number of inputs
Type
Voltage (single-ended)
Full-scale range
0 to 10 V
0 to 27648
Overshoot range
10.001 to 11.759 V
27,649 to 32,511
Overflow range
11.760 to 11.852 V
32,512 to 32,767
Resolution
10 bits
35 VDC
Smoothing
Noise rejection
10, 50, or 60 Hz
Impedance
100 K
None
729
Technical specifications
A.4 CPU 1214C
A.4.4.1
Table A- 54
50 Hz
10 Hz
50 ms
50 ms
100 ms
60ms
70 ms
200 ms
200 ms
240 ms
1150 ms
400 ms
480 ms
2300 ms
Sample time
4.17 ms
5 ms
25 ms
A.4.4.2
Table A- 55
Sample time
60 Hz (16.6 ms)
4.17 ms
50 Hz (20 ms)
5 ms
10 Hz (100 ms)
25 ms
730
Technical specifications
A.4 CPU 1214C
A.4.5
Out
X11
X10
X12
Table A- 57
Pin
X10
X11 (gold)
X12
L1 / 120-240 VAC
2M
1L
N / 120-240 VAC
AI 0
DQ a.0
Functional Earth
AI 1
DQ a.1
--
DQ a.2
--
DQ a.3
1M
--
DQ a.4
DI a.0
--
2L
DI a.1
--
DQ a.5
DI a.2
--
DQ a.6
10
DI a.3
--
DQ a.7
11
DI a.4
--
DQ b.0
12
DI a.5
--
DQ b.1
13
DI a.6
--
--
14
DI a.7
--
--
15
DI b.0
--
--
16
DI b.1
--
--
17
DI b.2
--
--
18
DI b.3
--
--
19
DI b.4
--
--
20
DI b.5
--
--
731
Technical specifications
A.4 CPU 1214C
Table A- 58
Out
X11
X10
X12
Table A- 59
Pin
X10
X11 (gold)
X12
L+ / 24VDC
2M
1L
M / 24VDC
AI 0
DQ a.0
Functional Earth
AI 1
DQ a.1
--
DQ a.2
--
DQ a.3
1M
--
DQ a.4
DI a.0
--
2L
DI a.1
--
DQ a.5
DI a.2
--
DQ a.6
10
DI a.3
--
DQ a.7
11
DI a.4
--
DQ b.0
12
DI a.5
--
DQ b.1
13
DI a.6
--
--
14
DI a.7
--
--
15
DI b.0
--
--
16
DI b.1
--
--
17
DI b.2
--
--
18
DI b.3
--
--
19
DI b.4
--
--
20
DI b.5
--
--
732
Technical specifications
A.4 CPU 1214C
Table A- 60
Out
X10
X11
X12
Table A- 61
Pin
X10
X11 (gold)
X12
L+ / 24VDC
2M
3L+
M / 24VDC
AI 0
3M
Functional Earth
AI 1
DQ a.0
--
DQ a.1
--
DQ a.2
1M
--
DQ a.3
DI a.0
--
DQ a.4
DI a.1
--
DQ a.5
DI a.2
--
DQ a.6
10
DI a.3
--
DQ a.7
11
DI a.4
--
DQ b.0
12
DI a.5
--
DQ b.1
13
DI a.6
--
--
14
DI a.7
--
15
DI b.0
--
--
16
DI b.1
--
--
17
DI b.2
--
--
18
DI b.3
--
--
733
Technical specifications
A.5 CPU 1215C
Pin
X10
X11 (gold)
X12
19
DI b.4
--
--
20
DI b.5
--
--
Note
Unused analog inputs should be shorted.
A.5
CPU 1215C
A.5.1
Table A- 62
General
Technical data
CPU 1215C
AC/DC/Relay
CPU 1215C
DC/DC/Relay
CPU 1215C
DC/DC/DC
Order number
6ES7 215-1BG31-0XB0
6ES7 215-1HG31-0XB0
6ES7 215-1AG31-0XB0
Dimensions W x H x D (mm)
130 x 100 x 75
130 x 100 x 75
130 x 100 x 75
Shipping weight
550 grams
585 grams
520 grams
Power dissipation
14 W
12 W
12 W
1600 mA max.
(5 VDC)
1600 mA max.
(5 VDC)
1600 mA max.
(5 VDC)
400 mA max.
(sensor power)
400 mA max.
(sensor power)
400 mA max.
(sensor power)
4 mA/input used
4 mA/input used
4 mA/input used
Table A- 63
CPU features
Technical data
User
memory1
Description
Work
100 Kbytes
Load
Retentive
10 Kbytes
14 inputs/10 outputs
2 inputs/2 outputs
8192 bytes
734
Technical specifications
A.5 CPU 1215C
Technical data
Description
16 Kbytes for startup and program cycle (including associated FBs and FCs)
8 SMs max.
1 max.
3 CMs max.
High-speed counters
Pulse outputs
14
Edge interrupts
Memory card
+/- 60 seconds/month
The size of the user program, data, and configuration is limited by the available load memory and work memory in the
CPU. There is no specific limit to the number of OB, FC, FB and DB blocks supported or to the size of a particular block;
the only limit is due to overall memory size.
For CPU models with relay outputs, you must install a digital signal board (SB) to use the pulse outputs.
Table A- 64
Performance
Type of instruction
Execution speed
Boolean
0.08 s/instruction
Move Word
1.7 s/instruction
Real math
2.3 s/instruction
A.5.2
Table A- 65
Element
Blocks
Description
Type
Size
64 Kbytes
Quantity
Nesting depth
16 from the program cycle or start up OB; 4 from the time delay
interrupt, time-of-day interrupt, cyclic interrupt, hardware interrupt,
time error interrupt, or diagnostic error interrupt OB
735
Technical specifications
A.5 CPU 1215C
Element
Description
OBs
Timers
Counters
Program cycle
Startup
1: OB 80
1: OB 82
Type
IEC
Quantity
Storage
Type
IEC
Quantity
Storage
Time-delay and cyclic interrupts use the same resources in the CPU. You can have only a total of 4 of these interrupts
(time-delay plus cyclic interrupts). You cannot have 4 time-delay interrupts and 4 cyclic interrupts.
Table A- 66
Communication
Technical data
Description
Number of ports
Type
Ethernet
HMI
Monitoring
device1
Connections
Data rates
10/100 Mb/s
Transformer isolated, 1500 VAC, for short term event safety only
Cable type
CAT5e shielded
The CPU provides dedicated HMI connections to support up to 3 HMI devices. (You can have up to 2 SIMATIC Comfort
panels.) The total number of HMI is affected by the types of HMI panels in your configuration. For example, you could
have up to three SIMATIC Basic panels connected to your CPU, or you could have up to two SIMATIC Comfort panels
with one additional Basic panel.
736
Technical specifications
A.5 CPU 1215C
Table A- 67
Power supply
Technical data
CPU 1215C
AC/DC/Relay
CPU 1215C
DC/DC/Relay
Voltage range
85 to 264 VAC
Line frequency
47 to 63 Hz
--
CPU only
500 mA at 24 VDC
1500 mA at 24 VDC
20 A at 264 VAC
12 A at 28.8 VDC
1500 VAC
Not isolated
0.5 mA max.
20 ms at 120 VAC
80 ms at 240 VAC
10 ms at 24 VDC
Input current
(max. load)
Table A- 68
CPU 1215C
DC/DC/DC
Sensor power
Technical data
CPU 1215C
AC/DC/Relay
CPU 1215C
DC/DC/Relay
CPU 1215C
DC/DC/DC
Voltage range
Not isolated
A.5.3
Table A- 69
Technical data
CPU 1215C
AC/DC/Relay
Number of inputs
14
Type
Rated voltage
30 VDC, max.
Surge voltage
15 VDC at 2.5 mA
5 VDC at 1 mA
CPU 1215C
DC/DC/Relay
CPU 1215C
DC/DC/DC
737
Technical specifications
A.5 CPU 1215C
Technical data
CPU 1215C
AC/DC/Relay
Isolation groups
Filter times
0.2, 0.4, 0.8, 1.6, 3.2, 6.4, and 12.8 ms (selectable in groups of 4)
Single phase: 100 KHz (Ia.0 to Ia.5) and 30 KHz (Ia.6 to Ib.5)
Quadrature phase: 80 KHz (Ia.0 to Ia.5) and 20 KHz (Ia.6 to Ib.5)
14 at 55 C horizontal or 45 C vertical
Table A- 70
CPU 1215C
DC/DC/Relay
CPU 1215C
DC/DC/DC
Digital outputs
Technical data
Number of outputs
10
10
Type
Voltage range
--
20 VDC min.
--
Current (max.)
2.0 A
0.5 A
Lamp load
30 W DC / 200 W AC
5W
ON state resistance
0.6 max.
--
10 A max.
Surge current
Overload protection
No
No
--
--
Isolation groups
--
L+ minus 48 VDC,
1 W dissipation
10 ms max.
10 ms max.
50 s max., off to on
200 s max., on to off
1 Hz
Not recommended
--
--
738
Technical specifications
A.5 CPU 1215C
Technical data
10 at 55 C horizontal or 45 C vertical
For CPU models with relay outputs, you must install a digital signal board (SB) to use the pulse outputs.
Depending on your pulse receiver and cable, an additional load resistor (at least 10% of rated current) may improve
pulse signal quality and noise immunity.
A.5.4
A.5.4.1
Table A- 71
Analog inputs
Technical data
Description
Number of inputs
Type
Voltage (single-ended)
Full-scale range
0 to 10 V
0 to 27648
Overshoot range
10.001 to 11.759 V
27,649 to 32,511
Overflow range
11.760 to 11.852 V
32,512 to 32,767
Resolution
10 bits
35 VDC
Smoothing
Noise rejection
10, 50, or 60 Hz
Impedance
100 K
None
739
Technical specifications
A.5 CPU 1215C
A.5.4.2
Table A- 72
50 Hz
10 Hz
50 ms
50 ms
100 ms
60ms
70 ms
200 ms
200 ms
240 ms
1150 ms
400 ms
480 ms
2300 ms
Sample time
4.17 ms
5 ms
25 ms
A.5.4.3
Table A- 73
Sample time
60 Hz (16.6 ms)
4.17 ms
50 Hz (20 ms)
5 ms
10 Hz (100 ms)
25 ms
A.5.4.4
Analog outputs
Table A- 74
Analog outputs
Technical data
Description
Number of outputs
Type
Current
Full-scale range
0 to 20 mA
0 to 27648
Overshoot range
27,649 to 32,511
Overflow range
see footnote 2
32,512 to 32,767
Resolution
10 bits
500 max.
None
740
Technical specifications
A.5 CPU 1215C
Technical data
Description
Settling time
2 ms
For the CPU 1215C with DC power supply: at supply voltage 20.4 VDC, up to 400 output drive impedance is
supported in overshoot range.
In an overflow condition, analog outputs will behave according to the device configuration properties settings. In the
"Reaction to CPU STOP" parameter, select either: Use substitute value or Keep last value.
A.5.5
X12
X11
X10
For additional noise immunity, connect "M" to chassis ground even if not using sensor
supply.
Note: X11 connectors must be gold. See Appendix C, Spare Parts for order number.
Table A- 76
Pin
X10
X11 (gold)
X12
L1 /120-240 VAC
2M
1L
AQ 0
DQ a.0
741
Technical specifications
A.5 CPU 1215C
Pin
X10
X11 (gold)
X12
Functional Earth
AQ 1
DQ a.1
3M
DQ a.2
AI 0
DQ a.3
1M
AI 1
DQ a.4
DI a.0
--
2L
DI a.1
--
DQ a.5
DI a.2
--
DQ a.6
10
DI a.3
--
DQ a.7
11
DI a.4
--
DQ b.0
12
DI a.5
--
DQ b.1
13
DI a.6
--
--
14
DI a.7
--
--
15
DI b.0
--
--
16
DI b.1
--
--
17
DI b.2
--
--
18
DI b.3
--
--
19
DI b.4
--
--
20
DI b.5
--
--
742
Technical specifications
A.5 CPU 1215C
Table A- 77
X12
X11
X10
For additional noise immunity, connect "M" to chassis ground even if not using sensor
supply.
For sinking inputs, connect "-" to "M" (shown). For sourcing inputs, connect "+" to "M".
Note: X11 connectors must be gold. See Appendix C, Spare Parts for order number.
Table A- 78
Pin
X10
X11 (gold)
X12
L+ / 24VDC
2M
1L
M / 24VDC
AQ 0
DQ a.0
Functional Earth
AQ 1
DQ a.1
2M
DQ a.2
AI 0
DQ a.3
1M
AI 1
DQ a.4
DI a.0
--
2L
DI a.1
--
DQ a.5
DI a.2
--
DQ a.6
10
DI a.3
--
DQ a.7
11
DI a.4
--
DQ b.0
12
DI a.5
--
DQ b.1
13
DI a.6
--
--
14
DI a.7
--
--
743
Technical specifications
A.5 CPU 1215C
Pin
X10
X11 (gold)
X12
15
DI b.0
--
--
16
DI b.1
--
--
17
DI b.2
--
--
18
DI b.3
--
--
19
DI b.4
--
--
20
DI b.5
--
--
Table A- 79
X12
X11
X10
For additional noise immunity, connect "M" to chassis ground even if not using sensor
supply.
For sinking inputs, connect "-" to "M" (shown). For sourcing inputs, connect "+" to "M".
Note: X11 connectors must be gold. See Appendix C, Spare Parts for order number.
Table A- 80
Pin
X10
X11 (gold)
X12
L1 / 24VDC
2M
4L+
M / 24VDC
AQ 0
4M
Functional Earth
AQ 1
DQ a.0
3M
DQ a.1
744
Technical specifications
A.6 Digital signal modules (SMs)
Pin
X10
X11 (gold)
X12
AI 0
DQ a.2
1M
AI 1
DQ a.3
DI a.0
--
DQ a.4
DI a.1
--
DQ a.5
DI a.2
--
DQ a.6
10
DI a.3
--
DQ a.7
11
DI a.4
--
DQ b.0
12
DI a.5
--
DQ b.1
13
DI a.6
--
--
14
DI a.7
--
--
15
DI b.0
--
--
16
DI b.1
--
--
17
DI b.2
--
--
18
DI b.3
--
--
19
DI b.4
--
--
20
DI b.5
--
--
Note
Unused analog inputs should be shorted.
A.6
A.6.1
Table A- 81
General specifications
Model
SM 1221 DI 8 x 24 VDC
SM 1221 DI 16 x 24 VDC
Order number
6ES7 221-1BF30-0XB0
6ES7 221-1BH30-0XB0
Dimensions W x H x D (mm)
45 x 100 x 75
45 x 100 x 75
Weight
170 grams
210 grams
Power dissipation
1.5 W
2.5 W
105 mA
130 mA
4 mA / input used
4 mA / input used
745
Technical specifications
A.6 Digital signal modules (SMs)
Table A- 82
Digital inputs
Model
SM 1221 DI 8 x 24 VDC
SM 1221 DI 16 x 24 VDC
Number of inputs
16
Type
Rated voltage
30 VDC, max.
30 VDC, max.
Surge voltage
15 VDC at 2.5 mA
15 VDC at 2.5 mA
5 VDC at 1 mA
5 VDC at 1 mA
Isolation groups
Filter times
16
Table A- 83
X10
X10
X11
X11
X12
X13
For sinking inputs, connect "-" to "M" (shown). For sourcing inputs, connect "+" to "M".
746
Technical specifications
A.6 Digital signal modules (SMs)
Table A- 84
Table A- 85
Table A- 86
X11
GND
No connection
No connection
No connection
1M
2M
DI a.0
DI a.4
DI a.1
DI a.5
DI a.2
DI a.6
DI a.3
DI a.7
Pin
A.6.2
X10
X10
X11
X12
X13
GND
No connection
No connection
No connection
No connection
No connection
No connection
No connection
1M
2M
3M
4M
DI a.0
DI a.4
DI b.0
DI b.4
DI a.1
DI a.5
DI b.1
DI b.5
DI a.2
DI a.6
DI b.2
DI b.6
DI a.3
DI a.7
DI b.3
DI b.7
Model
SM 1222 DQ 8 x Relay
SM 1222 DQ 8 x 24 VDC
Order number
6ES7 222-1HF30-0XB0
6ES7 222-1XF30-0XB0
6ES7 222-1BF30-0XB0
Dimensions W x H x D (mm)
45 x 100 x 75
70 x 100 x 75
45 x 100 x 75
Weight
190 grams
310 grams
180 grams
Power dissipation
4.5 W
5W
1.5 W
120 mA
140 mA
120 mA
Model
SM 1222
DQ 8 x Relay
SM 1222
DQ 8 x 24 VDC
Number of outputs
Type
Table A- 87
Digital outputs
747
Technical specifications
A.6 Digital signal modules (SMs)
Model
SM 1222
DQ 8 x Relay
SM 1222
DQ 8 x 24 VDC
Voltage range
5 to 30 VDC or 5 to 250
VAC
5 to 30 VDC or 5 to 250
VAC
--
--
20 VDC min.
--
--
Current (max.)
2.0 A
2.0 A
0.5 A
Lamp load
30 W DC/200 W AC
30 W DC/200 W AC
5W
0.6 max.
--
--
10 A max.
Surge current
Overload protection
No
No
No
Isolation resistance
--
--
Isolation groups
10 A
2A
4A
--
--
L+ minus 48 V, 1 W
dissipation
Switching delay
10 ms max.
10 ms max
50 s max. off to on
200 s max. on to off
1 Hz
1 Hz
--
10,000,000 open/close
cycles
10,000,000 open/close
cycles
--
100,000 open/close
cycles
--
8 at 55 C horizontal
or 45 C vertical
748
Technical specifications
A.6 Digital signal modules (SMs)
A.6.3
Table A- 88
General specifications
Model
SM 1222 DQ 16 x Relay
SM 1222 DQ 16 x 24 VDC
Order number
6ES7 222-1HH30-0XB0
6ES7 222-1BH30-0XB0
Dimensions W x H x D (mm)
45 x 100 x 75
45 x 100 x 75
Weight
260 grams
220 grams
Power dissipation
8.5 W
2.5 W
135 mA
140 mA
Model
SM1222
DQ 16 x Relay
SM1222
DQ 16 x 24 VDC
Number of outputs
16
16
Type
Voltage range
20 VDC min.
Current (max.)
2.0 A
0.5 A
Lamp load
30 W DC/200 W AC
5W
0.6 max.
--
10 A max.
Surge current
Overload protection
No
No
Table A- 89
Digital outputs
Isolation resistance
Isolation groups
10 A
8A
L+ minus 48 V, 1 W dissipation
Switching delay
10 ms max.
50 s max. off to on
200 s max. on to off
1 Hz
Last value or substitute value (default Last value or substitute value (default
value 0)
value 0)
749
Technical specifications
A.6 Digital signal modules (SMs)
Model
SM1222
DQ 16 x Relay
16 at 55 C horizontal or 45 C
vertical
Table A- 90
SM1222
DQ 16 x 24 VDC
16
X10
X10
X11
X11
Table A- 91
X10
X11
L+ / 24VDC
No connection
M / 24VDC
2L
Functional Earth
DQ a.3
1L
DQ a.4
DQ a.0
DQ a.5
DQ a.1
DQ a.6
DQ a.2
DQ a.7
750
Technical specifications
A.6 Digital signal modules (SMs)
Table A- 92
Table A- 93
X10
X11
L+ / 24VDC
No connection
M / 24VDC
No connection
Functional Earth
No connection
DQ a.0
DQ a.4
DQ a.1
DQ a.5
DQ a.2
DQ a.6
DQ a.2
DQ a.7
X10
X11
X12
X13
Table A- 94
Pin
X10
X11
X12
X13
L+ / 24VDC
Functional Earth
No connection
No connection
M / 24VDC
No connection
No connection
No connection
No connection
No connection
No connection
No connection
No connection
No connection
No connection
No connection
0L
2L
4L
6L
751
Technical specifications
A.6 Digital signal modules (SMs)
Pin
Table A- 95
X10
X11
X12
X13
DQ a.0X
DQ a.2X
DQ a.4X
DQ a.6X
DQ a.0
DQ a.2
DQ a.4
DQ a.6
No connection
No connection
No connection
No connection
1L
3L
5L
7L
10
DQ a.1X
DQ a.3X
DQ a.5X
DQ a.7X
11
DQ a.1
DQ a.3
DQ a.5
DQ a.7
X10
X10
X11
X11
X12
X12
X13
X13
Table A- 96
Pin
X10
X11
X12
X13
L+ / 24VDC
Functional Earth
No connection
4L
M / 24VDC
No connection
No connection
DQ b.2
1L
2L
No connection
DQ b.3
DQ a.0
DQ a.4
No connection
DQ b.4
DQ a.1
DQ a.5
3L
DQ b.5
DQ a.2
DQ a.6
DQ b.0
DQ b.6
DQ a.3
DQ a.7
DQ b.1
DQ b.7
752
Technical specifications
A.6 Digital signal modules (SMs)
Table A- 97
Pin
A.6.4
Table A- 98
X10
X11
X12
X13
L+ / 24VDC
Functional Earth
No connection
No connection
M / 24VDC
No connection
No connection
No connection
No connection
No connection
No connection
No connection
DQ a.0
DQ a.4
DQ b.0
DQ b.4
DQ a.1
DQ a.5
DQ b.1
DQ b.5
DQ a.2
DQ a.6
DQ b.2
DQ b.6
DQ a.3
DQ a.7
DQ b.3
DQ b.7
Model
SM 1223
SM 1223
DI 8 x 24 VDC, DQ DI 16 x 24 VDC,
DQ 16 x Relay
8 x Relay
SM 1223
SM 1223
DI 8 x 24 VDC, DQ DI 16 x 24 VDC,
DQ 16 x 24 VDC
8 x 24 VDC
Order number
6ES7 223-1PH300XB0
6ES7 223-1PL300XB0
6ES7 223-1BH300XB0
6ES7 223-1BL300XB0
Dimensions W x H x D (mm)
45 x 100 x 75
70 x 100 x 75
45 x 100 x 75
70 x 100 x 75
Weight
230 grams
350 grams
210 grams
310 grams
Power dissipation
5.5 W
10 W
2.5 W
4.5 W
145 mA
180 mA
145 mA
185 mA
4 mA / Input used
11 mA / Relay coil used
4 mA / Input used
Model
SM 1223
SM 1223
DI 8 x 24 VDC, DQ DI 16 x 24 VDC,
DQ 16 x Relay
8 x Relay
SM 1223
SM 1223
DI 8 x 24 VDC, DQ DI 16 x 24 VDC,
DQ 16 x 24 VDC
8 x 24 VDC
Number of inputs
16
Type
Rated voltage
30 VDC max.
Surge voltage
15 VDC at 2.5 mA
5 VDC at 1 mA
Isolation groups
Filter times
0.2, 0.4, 0.8, 1.6, 3.2, 6.4, and 12.8 ms, selectable in groups of 4
Table A- 99
Digital inputs
16
753
Technical specifications
A.6 Digital signal modules (SMs)
Model
SM 1223
SM 1223
DI 8 x 24 VDC, DQ DI 16 x 24 VDC,
DQ 16 x Relay
8 x Relay
SM 1223
SM 1223
DI 8 x 24 VDC, DQ DI 16 x 24 VDC,
DQ 16 x 24 VDC
8 x 24 VDC
8 (no adjacent 8
points) at 60 C
horizontal or
50 C vertical
16 at 55 C
horizontal or
45 C vertical
16
SM 1223
DI 8 x 24 VDC,
DQ 8 x Relay
SM 1223
DI 16 x 24 VDC,
DQ 16 x Relay
SM 1223
DI 8 x 24 VDC,
DQ 8 x 24 VDC
SM 1223
DI 16 x 24 VDC,
DQ 16 x 24 VDC
Number of outputs
16
16
Type
Voltage range
--
20 VDC, min.
--
Current (max.)
2.0 A
0.5 A
Lamp load
30 W DC / 200 W AC
5W
0.6 max.
--
10 A max.
Surge current
Overload protection
No
Isolation resistance
--
--
Isolation groups
10A
8A
4A
8A
--
L+ minus 48 V, 1 W dissipation
Switching delay
10 ms max.
50 s max. off to on
200 s max. on to off
1 Hz
--
--
--
754
Technical specifications
A.6 Digital signal modules (SMs)
Model
SM 1223
DI 8 x 24 VDC,
DQ 8 x Relay
SM 1223
DI 8 x 24 VDC,
DQ 8 x 24 VDC
SM 1223
DI 16 x 24 VDC,
DQ 16 x Relay
8 (no adjacent 8
points) at 60 C
horizontal or
50 C vertical
16 at 55 C
horizontal or
45 C vertical
SM 1223
DI 16 x 24 VDC,
DQ 16 x 24 VDC
16
Table A- 101 Wiring diagrams for the digital input VDC/output relay SMs
SM 1223 DI 8 x 24 VDC, DQ 8 x Relay
(6ES7 223-1PH30-0XB0)
Notes
For sinking
X10
X10
X11
X11
X12
X12
X13
X13
Table A- 102 Connector Pin Locations for SM 1223 DI 8 x 24 VDC, DQ 8 x Relay (6ES7 223-1PH300XB0)
Pin
X10
X11
X12
X13
L+ / 24VDC
GND
No connection
No connection
M / 24VDC
No connection
No connection
No connection
1M
2M
1L
2L
DI a.0
DI a.4
DQ a.0
DQ a.4
755
Technical specifications
A.6 Digital signal modules (SMs)
Pin
X10
X11
X12
X13
DI a.1
DI a.5
DQ a.1
DQ a.5
DI a.2
DI a.6
DQ a.2
DQ a.6
DI a.3
DI a.7
DQ a.3
DQ a.7
Table A- 103 Connector Pin Locations for SM 1223 DI 16 x 24 VDC, DQ 16 x Relay (6ES7 2231PL30-0XB0)
Pin
X10
X11
X12
X13
L+ / 24VDC
GND
1L
3L
M / 24VDC
No connection
DQ a.0
DQ b.0
1M
2M
DQ a.1
DQ b.1
DI a.0
DI b.0
DQ a.2
DQ b.2
DI a.1
DI b.1
DQ a.3
DQ b.3
DI a.2
DI b.2
No connection
No connection
DI a.3
DI b.3
2L
4L
DI a.4
DI b.4
DQ a.4
DQ b.4
DI a.5
DI b.5
DQ a.5
DQ b.5
10
DI a.6
DI b.6
DQ a.6
DQ b.6
11
DI a.7
DI b.7
DQ a.7
DQ b.7
Table A- 104 Wiring diagrams for the digital input VDC/output SMs
SM 1223 DI 8 x 24 VDC, DQ 8 x 24 VDC
(6ES7 223-1BH30-0XB0)
Notes
For sinking
X10
X11
X12
X13
X10
X10
X12
X13
756
Technical specifications
A.6 Digital signal modules (SMs)
Table A- 105 Connector Pin Locations for SM 1223 DI 8 x 24 VDC, DQ 8 x 24 VDC (6ES7 2231BH30-0XB0)
Pin
X10
X11
X12
X13
L+ / 24VDC
GND
No connection
No connection
M / 24VDC
No connection
No connection
No connection
1M
2M
No connection
No connection
DI a.0
DI a.4
DQ a.0
DQ a.4
DI a.1
DI a.5
DQ a.1
DQ a.5
DI a.2
DI a.6
DQ a.2
DQ a.6
DI a.3
DI a.7
DQ a.3
DQ a.7
Table A- 106 Connector Pin Locations for SM 1223 DI 16 x 24 VDC, DQ 16 x 24 VDC (6ES7 2231BL30-0XB0)
Pin
A.6.5
X10
X11
X12
X13
L+ / 24VDC
GND
No connection
No connection
M / 24VDC
No connection
No connection
No connection
1M
2M
No connection
No connection
DI a.0
DI b.0
DQ a.0
DQ b.0
DI a.1
DI b.1
DQ a.1
DQ b.1
DI a.2
DI b.2
DQ a.2
DQ b.2
DI a.3
DI b.3
DQ a.3
DQ b.3
DI a.4
DI b.4
DQ a.4
DQ b.4
DI a.5
DI b.5
DQ a.5
DQ b.5
10
DI a.6
DI b.6
DQ a.6
DQ b.6
11
DI a.7
DI b.7
DQ a.7
DQ b.7
Order number
6ES7 223-1QH30-0XB0
Dimensions W x H x D (mm)
45 x 100 x 75 mm
Weight
190 grams
Power dissipation
7.5 W
120 mA
757
Technical specifications
A.6 Digital signal modules (SMs)
Table A- 108 Digital inputs
Model
Number of inputs
Type
IEC Type 1
Rated voltage
264 VAC
Surge voltage
--
79 VAC at 2.5 mA
20 VAC at 1 mA
1 mA
Isolation
groups1
1 mA
Cable length
Number of outputs
Type
Voltage range
--
--
Current (max.)
2.0 A
Lamp load
30 W DC / 200 W AC
--
Surge current
Overload protection
No
Isolation resistance
Isolation groups
10 A
--
758
Technical specifications
A.6 Digital signal modules (SMs)
Model
10 ms
1 Hz
8 at 55 C horizontal or 45 C vertical
X10
X11
X12
X13
Table A- 111 Connector Pin Locations for SM 1223 DI 8 x 120/240 VAC, DQ 8 x Relay (6ES7 2231QH30-0XB0)
Pin
X10
X11
X12
X13
L+ / 24VDC
GND
No connection
No connection
M / 24VDC
No connection
No connection
No connection
1N
2N
1L
2L
DI a.0
DI a.4
DQ a.0
DQ a.4
DI a.1
DI a.5
DQ a.1
DQ a.5
DI a.2
DI a.6
DQ a.2
DQ a.6
DI a.3
DI a.7
DQ a.3
DQ a.7
759
Technical specifications
A.7 Analog signal modules (SMs)
A.7
A.7.1
SM 1231 AI 4 x 13 bit
SM 1231 AI 8 x 13 bit
SM 1231 AI 4 x 16 bit
Order number
6ES7 231-4HD30-0XB0
6ES7 231-4HF30-0XB0
6ES7 231-5ND30-0XB0
Dimensions W x H x D (mm)
45 x 100 x 75
45 x 100 x 75
45 x 100 x 75
Weight
180 grams
180 grams
180 grams
Power dissipation
2.2 W
2.3 W
2.0 W
80 mA
90 mA
80 mA
45 mA
45 mA
65 mA
SM 1231 AI 4 x 13 bit
SM 1231 AI 8 x 13 bit
SM 1231 AI 4 x 16 bit
Number of inputs
Type
Voltage or current
(differential)
Range
10 V, 5 V, 2.5 V, or 0 to 20 mA
10 V, 5 V, 2.5 V, 1.25
V, 0 to 20 mA or 4 mA to
20 mA
Overshoot/undershoot range
Voltage: 32,511 to 27,649 / -27,649 to -32,512
(data word)
Current: 32,511 to 27,649 / 0 to -4864
Refer to the section on analog input
ranges for voltage and current
(Page 770).
Voltage:
32,511 to 27649 /
-27,649 to -32,512
Current:(0-20 mA): to
32,511 to 27,649 /
0 to -4864; 4-20 mA: 32511
to 27,649 /
-1 to -4,864
Resolution1
Noise rejection
760
Technical specifications
A.7 Analog signal modules (SMs)
Model
SM 1231 AI 4 x 13 bit
Input impedance
Isolation
Field side to logic
Logic to 24 VDC
Field side to 24 VDC
Channel to channel
None
Measuring principle
40 dB, DC to 60 Hz
Operational signal
range1
SM 1231 AI 8 x 13 bit
SM 1231 AI 4 x 16 bit
1 M (voltage) /
<315 , >280 (current)
500 VAC
500 VAC
500 VAC
None
0.1% / 0.3% of full scale
Signal plus common mode voltage must be less than +12 V and greater than -12 V
100 m, twisted and shielded
Voltages outside the operational range applied to one channel may cause interference on other channels.
Model
SM 1231 AI 4 x 13 bit
SM 1231 AI 8 x 13 bit
SM 1231 AI 4 x 16 bit
Overflow/underflow
Yes 1
Yes
Yes
Yes
Yes
Yes
Open wire
--
--
For SM 1231 AI 4 x 13 bit: If a voltage greater than +30 VDC or less than -15 VDC is applied to the input, the resulting
value will be unknown and the corresponding overflow or underflow may not be active.
761
Technical specifications
A.7 Analog signal modules (SMs)
Table A- 115 Wiring diagrams for the analog input SMs
SM 1231 AI 4 x 13 bit (6ES7 231-4HD30-0XB0)
X10
X10
X11
X12
X11
X13
Note: Connectors must be gold. See Appendix C, Spare Parts for order number.
Table A- 116 Connector pin locations for SM 1231 AI 4 x 13 bit (6ES7 231-4HD30-0XB0)
Pin
X10 (gold)
X11 (gold)
L+ / 24VDC
No connection
M / 24VDC
No connection
GND
No connection
AI 0+
AI 2+
AI 0-
AI 2-
AI 1+
AI 3+
AI 1-
AI 3-
Table A- 117 Connector pin locations for SM 1231 AI 8 x 13 bit (6ES7 231-4HF30-0XB0)
Pin
X10 (gold)
X11 (gold)
X12 (gold)
X13 (gold)
L+ / 24VDC
No connection
No connection
No connection
M / 24VDC
No connection
No connection
No connection
GND
No connection
No connection
No connection
AI 0+
AI 2+
AI 4+
AI 6+
AI 0-
AI 2-
AI 4-
AI 6-
762
Technical specifications
A.7 Analog signal modules (SMs)
Pin
X10 (gold)
X11 (gold)
X12 (gold)
X13 (gold)
AI 1+
AI 3+
AI 5+
AI 7+
AI 1-
AI 3-
AI 5-
AI 7-
X10
X11
Note: Connectors must be gold. See Appendix C, Spare Parts for order number.
Table A- 119 Connector pin locations for SM 1231 AI 4 x 16 bit (6ES7 231-5ND30-0XB0)
Pin
X10 (gold)
X11 (gold)
L+ / 24VDC
No connection
M / 24VDC
No connection
GND
No connection
AI 0+
AI 2+
AI 0-
AI 2-
AI 1+
AI 3+
AI 1-
AI 3-
763
Technical specifications
A.7 Analog signal modules (SMs)
Note
Unused analog inputs should be shorted.
When the inputs are configured for "current" mode, no current will flow through the input
unless you supply external power to the module.
A.7.2
SM 1232 AQ 2 x 14 bit
SM 1232 AQ 4 x 14 bit
Order number
6ES7 232-4HB30-0XB0
6ES7 232-4HD30-0XB0
Dimensions W x H x D (mm)
45 x 100 x 75
45 x 100 x 75
Weight
180 grams
180 grams
Power dissipation
1.8 W
2.0 W
80 mA
80 mA
45 mA (no load)
45 mA (no load)
Technical data
SM 1232 AQ 2 x 14 bit
SM 1232 AQ 4 x 14 bit
Number of outputs
Type
Voltage or current
Voltage or current
Range
10 V or 0 to 20 mA
10 V or 0 to 20 mA
Resolution
Voltage: 14 bits
Voltage: 14 bits
Current: 13 bits
Current: 13 bits
Load impedance
Voltage: 1000
Current: 600
none
764
Technical specifications
A.7 Analog signal modules (SMs)
Table A- 122 Diagnostics
Technical data
SM 1232 AQ 2 x 14 bit
SM 1232 AQ 4 x 14 bit
Overflow/underflow
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
X10
X10
X11
X11
X12
X13
Note: Connectors must be gold. See Appendix C, Spare Parts for order number.
Table A- 124 Connector pin locations for SM 1232 AQ 2 x 14 bit (6ES7 232-4HB30-0XB0)
Pin
X10 (gold)
X11 (gold)
L+ / 24VDC
No connection
M / 24VDC
No connection
GND
No connection
No connection
AQ 0M
No connection
AQ 0
No connection
AQ 1M
No connection
AQ 1
765
Technical specifications
A.7 Analog signal modules (SMs)
Table A- 125 Connector pin locations for SM 1232 AQ 4 x 14 bit (6ES7 232-4HD30-0XB0)
Pin
A.7.3
X10 (gold)
X11 (gold)
X12 (gold)
X13 (gold)
L+ / 24VDC
No connection
No connection
No connection
M / 24VDC
No connection
No connection
No connection
GND
No connection
No connection
No connection
No connection
No connection
AQ 0M
AQ 2M
No connection
No connection
AQ 0
AQ 2
No connection
No connection
AQ 1M
AQ 3M
No connection
No connection
AQ 1
AIQ 3
Order number
6ES7 234-4HE30-0XB0
Dimensions W x H x D (mm)
45 x 100 x 75
Weight
220 grams
Power dissipation
2.4 W
80 mA
60 mA (no load)
Number of inputs
Type
Range
10 V, 5 V, 2.5 V, or 0 to 20 mA
-27,648 to 27,648
Overshoot/undershoot range
(data word)
Resolution
35 V / 40 mA
Smoothing
Noise rejection
766
Technical specifications
A.7 Analog signal modules (SMs)
Model
Input impedance
None
40 dB, DC to 60 Hz
Signal plus common mode voltage must be less than +12 V and greater
than -12 V
Voltages outside the operational range applied to one channel may cause interference on other channels.
Number of outputs
Type
Voltage or current
Range
10 V or 0 to 20 mA
Resolution
Load impedance
Voltage: 1000
Current: 600
none
Model
Overflow/underflow
Yes 1
Yes on outputs
Yes on outputs
Yes
If a voltage greater than +30 VDC or less than -15 VDC is applied to the input, the resulting value will be unknown and
the corresponding overflow or underflow may not be active.
767
Technical specifications
A.7 Analog signal modules (SMs)
Table A- 130 Wiring diagrams for the analog input/output SM
SM 1234 AI 4 x 13 Bit / AQ 2 x 14 bit (6ES7 234-4HE30-0XB0)
X10
X11
X12
X13
Note: Connectors must be gold. See Appendix C, Spare Parts for order number.
Table A- 131 Connector pin locations for SM 1234 AI 4 x 13 Bit / AQ 2 x 14 bit (6ES7 234-4HE300XB0)
Pin
X10 (gold)
X11 (gold)
X12 (gold)
X13 (gold)
L+ / 24VDC
No connection
No connection
No connection
M / 24VDC
No connection
No connection
No connection
GND
No connection
No connection
No connection
AI 0+
AI 2+
No connection
AQ 0M
AI 0-
AI 2-
No connection
AQ 0
AI 1+
AI 3+
No connection
AQ 1M
AI 1-
AI 3-
No connection
AIQ 1
Note
Unused analog inputs should be shorted.
When the inputs are configured for "current" mode, no current will flow through the input
unless you supply external power to the module.
768
Technical specifications
A.7 Analog signal modules (SMs)
A.7.4
60 Hz (16.6 ms)
50 Hz (20 ms)
10 Hz (100 ms)
4 ms
18 ms
22 ms
100 ms
9 ms
52 ms
63 ms
320 ms
32 ms
203 ms
241 ms
1200 ms
61 ms
400 ms
483 ms
2410 ms
Sample time
4 AI x 13 bits
0.625 ms
4.17 ms
5 ms
25 ms
8 AI x 13 bits
1.25 ms
4.17 ms
5 ms
25 ms
4 AI4 x 16 bits
0.417 ms
0.397 ms
0.400 ms
0.400 ms
A.7.5
Sample time
8-channel SM
0.625 ms
1.250 ms
60 Hz (16.6 ms)
4.170 ms
4.17 ms
4.17 ms
50 Hz (20 ms)
5.000 ms
5 ms
5 ms
10 Hz (100 ms)
25.000 ms
25 ms
25 ms
769
Technical specifications
A.7 Analog signal modules (SMs)
A.7.6
10 V
5 V
2.5 V
1.25V
0 to 10 V
32767
7FFF
11.851 V
5.926 V
2.963 V
1.481 V
Overflow
11.851 V
Overflow
32512
7F00
32511
7EFF
11.759 V
5.879 V
2.940 V
1.470 V
11.759 V
27649
6C01
Overshoot
range
Overshoot
range
27648
6C00
10 V
5V
2.5 V
1.250 V
Rated range
10 V
Rated
range
20736
5100
7.5 V
3.75 V
1.875 V
0.938 V
7.5 V
361.7 V
180.8 V
90.4 V
45.2 V
361.7 V
0V
0V
0V
0V
0V
-1
FFFF
-20736
AF00
-7.5 V
-3.75 V
-1.875 V
-0.938 V
-27648
9400
-10 V
-5 V
-2.5 V
-1.250 V
-27649
93FF
Negative
values are
not
supported
-32512
8100
-11.759 V -5.879 V
-2.940 V
-1.470 V
-32513
80FF
-32768
8000
-11.851 V -5.926 V
-2.963 V
-1.481 V
A.7.7
Undershoot
range
Underflow
Decimal
Hexidecimal
0 mA to 20 mA
4 mA to 20 mA
32767
7FFF
23.70 mA
22.96 mA
Overflow
32512
7F00
32511
7EFF
23.52 mA
22.81 mA
Overshoot range
27649
6C01
27648
6C00
20 mA
20 mA
Nominal range
20736
5100
15 mA
16 mA
723.4 nA
4 mA + 578.7 nA
0 mA
4 mA
-1
FFFF
-4864
ED00
-4865
ECFF
-32768
8000
Undershoot range
-3.52 mA
1.185 mA
Underflow
770
Technical specifications
A.7 Analog signal modules (SMs)
A.7.8
Output (AQ) measurement ranges for voltage and current (SB and SM)
Decimal
Hexadecimal
10 V
32767
7FFF
See note 1
32512
7F00
See note 1
32511
7EFF
11.76 V
Overshoot range
27649
6C01
27648
6C00
10 V
Rated range
20736
5100
7.5 V
361.7 V
0V
-1
FFFF
-361.7 V
-20736
AF00
-7.5 V
-27648
9400
-10 V
-27649
93FF
-32512
8100
-11.76 V
-32513
80FF
See note 1
-32768
8000
See note 1
Overflow
Undershoot range
Underflow
In an overflow or underflow condition, analog outputs will behave according to the device configuration properties set for
the analog signal module. In the "Reaction to CPU STOP" parameter, select either: Use substitute value or Keep last
value.
Decimal
Hexadecimal
0 mA to 20 mA
32767
7FFF
See note 1
32512
7F00
See note 1
32511
7EFF
23.52 mA
Overshoot range
27649
6C01
27648
6C00
20 mA
Rated range
20736
5100
15 mA
723.4 nA
0 mA
Overflow
In an overflow or underflow condition, analog outputs will behave according to the device configuration properties set for
the analog signal module. In the "Reaction to CPU STOP" parameter, select either: Use substitute value or Keep last
value.
771
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
A.8
A.8.1
SM 1231 Thermocouple
Model
SM 1231 AI 4 x 16 bit TC
SM 1231 AI 8 x 16 bit TC
Order number
6ES7 231-5QD30-0XB0
6ES7 231-5QF30-0XB0
Dimensions W x H x D (mm)
45 x 100 x 75
45 x 100 x 75
Weight
180 grams
190 grams
Power dissipation
1.5 W
1.5 W
80 mA
80 mA
40 mA
40 mA
20.4 to 28.8 VDC (Class 2, Limited Power, or sensor power from PLC)
SM 1231 AI 4 x 16 bit TC
SM 1231 AI 8 x 16 bit TC
Number of inputs
Range
Temperature
0.1 C/0.1 F
0.1 C/0.1 F
Voltage
35 V
35 V
Noise rejection
Impedance
10 M
10 M
Field to logic
500 VAC
500 VAC
Field to 24 VDC
500 VAC
500 VAC
24 VDC to logic
500 VAC
500 VAC
Channel to channel
120 VAC
120 VAC
Accuracy
Repeatability
0.05% FS
0.05% FS
Measuring principle
Integrating
Integrating
1.5C
1.5C
Isolation
772
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
Model
SM 1231 AI 4 x 16 bit TC
SM 1231 AI 8 x 16 bit TC
Wire resistance
100 max.
100 max.
Model
SM 1231 AI 4 x 16 bit TC
SM 1231 AI 8 x 16 bit TC
Overflow/underflow 1
Yes
Yes
Yes
Yes
Yes
Yes
The overflow, underflow and low voltage diagnostic alarm information will be reported in the analog data values even if
the alarms are disabled in the module configuration.
When wire break alarm is disabled and an open wire condition exists in the sensor wiring, the module may report
random values.
The SM 1231 Thermocouple (TC) analog signal module measures the value of voltage
connected to the module inputs. The temperature measurement type can be either
"Thermocouple" or "Voltage".
"Thermocouple": The value will be reported in degrees multiplied by ten (for example, 25.3
degrees will be reported as decimal 253).
"Voltage": The nominal range full scale value will be decimal 27648.
773
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
Table A- 141 Wiring diagrams for the thermocouple SMs
SM 1231 AI 4 x TC 16 bit (6ES7 231-5QD30-0XB0)
X10
X10
X11
X12
X11
X13
Note: Connectors must be gold. See Appendix C, Spare Parts for order number.
X10 (gold)
X11 (gold)
L+ / 24VDC
No connection
M / 24VDC
No connection
GND
No connection
AI 0+ /TC
AI 2+ /TC
AI 0- /TC
AI 2- /TC
AI 1+ /TC
AI 3+ /TC
AI 1- /TC
AI 3- /TC
Table A- 143 Connector Pin Locations for SM 1231 AI 8 x TC bit (6ES7 231-5QF30-0XB0)
Pin
X10 (gold)
X11 (gold)
X12 (gold)
X13 (gold)
L+ / 24VDC
No connection
No connection
No connection
M / 24VDC
No connection
No connection
No connection
GND
No connection
No connection
No connection
AI 0+ /TC
AI 2+ /TC
AI 4 I- /TC
AI 6 I- /TC
AI 0- /TC
AI 2- /TC
AI 4 I+ /TC
AI 6 I+ /TC
774
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
Pin
X10 (gold)
X11 (gold)
X12 (gold)
X13 (gold)
AI 1+ /TC
AI 3+ /TC
AI 5 M- /TC
AI 7 M- /TC
AI 1- /TC
AI 3- /TC
AI 5 M+ /TC
AI 7 M+ /TC
Note
Unused analog inputs should be shorted.
The thermocouple unused channels can be deactivated. No error will occur if an unused
channel is deactivated.
A.8.1.1
775
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
A.8.1.2
Under-range
minimum1
Nominal range
low limit
Nominal range
high limit
Over-range
maximum2
Normal range 3, 4
accuracy @ 25C
Normal range 1, 2
accuracy -20C
to 60C
-210.0C
-150.0C
1200.0C
1450.0C
0.3C
0.6C
-270.0C
-200.0C
1372.0C
1622.0C
0.4C
1.0C
-270.0C
-200.0C
400.0C
540.0C
0.5C
1.0C
-270.0C
-200.0C
1000.0C
1200.0C
0.3C
0.6C
R&S
-50.0C
100.0C
1768.0C
2019.0C
1.0C
2.5C
-270.0C
-200.0C
1300.0C
1550.0C
1.0C
1.6C
0.0C
100.0C
2315.0C
2500.0C
0.7C
2.7C
TXK/XK(L)
-200.0C
-150.0C
800.0C
1050.0C
0.6C
1.2C
Voltage
-32512
-27648
-80mV
27648
80mV
32511
0.05%
0.1%
Thermocouple values below the under-range minimum value are reported as -32768.
Thermocouple values above the over-range minimum value are reported as 32767.
Internal cold junction error is 1.5C for all ranges. This adds to the error in this table. The module requires at least 30
minutes of warmup time to meet this specification.
In the presence of radiated radio frequency of 970 MHz to 990 MHz, the accuracy of the SM 1231 AI 4 x 16 bit TC may
be degraded.
Table A- 145 Noise reduction and update times for the SM 1231 Thermocouple
Integration time
10 ms 1
0.143
0.285
60 Hz (16.6 ms)
16.67 ms
0.223
0.445
50 Hz (20 ms)
20 ms
0.263
0.525
10 Hz (100 ms)
100 ms
1.225
2.450
To maintain module resolution and accuracy when 400 Hz rejection is selected, the integration time is 10 ms. This
selection also rejects 100 Hz and 200 Hz noise.
776
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
It is recommended for measuring thermocouples that a 100 ms integration time be used. The
use of smaller integration times will increase the repeatability error of the temperature
readings.
Note
After power is applied, the module performs internal calibration for the analog-to-digital
converter. During this time the module reports a value of 32767 on each channel until valid
data is available on that channel. Your user program may need to allow for this initialization
time. Because the configuration of the module can vary the length of the initialization time,
you should verify the behavior of the module in your configuration. If required, you can
include logic in your user program to accommodate the initialization time of the module.
Units
Type J in F
Units
Decimal
Hexadecimal
Range
> 2642.0
32767
7FFF
Overflow
38A4
2642.0
26420
6734
Overrange
12001
2EE1
2192.2
21922
55A2
12000
2EE0
2192.0
21920
55A0
-150.0
-1500
FA24
-238.0
-2380
F6B4
< -150.0
-32768
8000
< -238.0
-32768
8000
Decimal
Hexadecimal
> 1450.0
32767
7FFF
1450.0
14500
1200.1
1200.0
Rated range
Underflow1
Faulty wiring (for example, polarity reversal, or open inputs) or sensor error in the negative
range (for example, wrong type of thermocouple) may cause the thermocouple module to
signal underflow.
777
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
A.8.2
SM 1231 RTD
Order number
6ES7 231-5PD30-0XB0
6ES7 231-5PF30-0XB0
Dimensions W x H x D (mm)
45 x 100 x 75
70 x 100 x 75
Weight
220 grams
270 grams
Power dissipation
1.5 W
1.5 W
80 mA
90 mA
40 mA
40 mA
VDC) 1
20.4 to 28.8 VDC (Class 2, Limited Power, or sensor power from CPU)
Number of inputs
Type
Range
Temperature
0.1 C/0.1 F
0.1 C/0.1 F
Resistance
35 V
35 V
Noise rejection
> 120dB
> 120dB
Impedance
10 M
10 M
500 VAC
500 VAC
Field to 24 VDC
500 VAC
500 VAC
24 VDC to logic
500 VAC
500 VAC
none
none
Accuracy
Repeatability
0.05% FS
0.05% FS
0.5m W
0.5m W
Measuring principle
Integrating
Integrating
Isolation
778
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
Technical data
Wire resistance
Overflow/underflow 1,2
Yes
Yes
Wire break 3
Yes
Yes
Yes
Yes
24 VDC low
voltage 1
The overflow, underflow and low voltage diagnostic alarm information will be reported in the analog data values even if
the alarms are disabled in the module configuration.
When wire break alarm is disabled and an open wire condition exists in the sensor wiring, the module may report
random values.
The SM 1231 RTD analog signal module measures the value of resistance connected to the
module inputs. The measurement type can be selected as either "Resistor" or "Thermal
resistor".
"Resistor": The nominal range full scale value will be decimal 27648.
"Thermal resistor": The value will be reported in degrees multiplied by ten (for example,
25.3 degrees will be reported as decimal 253).
The SM 1231 RTD module supports measurements with 2-wire, 3-wire and 4-wire
connections to the sensor resistor.
779
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
Table A- 150 Wiring diagrams for the RTD SMs
SM 1231 RTD 4 x 16 bit (6ES7 231-5PD30-0XB0)
X10
X10
X11
X11
X12
X12
X13
X13
Table A- 151 Connector Pin Locations for SM 1231 RTD 4 x 16 bit (6ES7 231-5PD30-0XB0)
Pin
X10 (gold)
X11 (gold)
X12 (gold)
X13 (gold)
L+ / 24VDC
No connection
No connection
No connection
M / 24VDC
No connection
No connection
No connection
GND
No connection
No connection
No connection
AI 0 M+ /RTD
AI 1 M+ /RTD
AI 2 M+ /RTD
AI 3 M+ /RTD
AI 0 M- /RTD
AI 1 M- /RTD
AI 2 M- /RTD
AI 3 M- /RTD
AI 0 I+ /RTD
AI 1 I+ /RTD
AI 2 I+ /RTD
AI 3 I+ /RTD
AI 0 I- /RTD
AI 1 I- /RTD
AI 2 I- /RTD
AI 3 I- /RTD
Table A- 152 Connector Pin Locations for SM 1231 RTD 8 x 16 bit (6ES7 231-5PF30-0XB0)
Pin
X10 (gold)
X11 (gold)
X12 (gold)
X13 (gold)
L+ / 24VDC
No connection
No connection
No connection
M / 24VDC
No connection
No connection
No connection
GND
No connection
No connection
No connection
AI 0 M+ /RTD
AI 2 M+ /RTD
AI 4 M+ /RTD
AI 6 M+ /RTD
AI 0 M- /RTD
AI 2 M- /RTD
AI 4 M- /RTD
AI 6 M- /RTD
AI 0 I+ /RTD
AI 2 I+ /RTD
AI 4 I+ /RTD
AI 6 I+ /RTD
780
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
Pin
X10 (gold)
X11 (gold)
X12 (gold)
X13 (gold)
AI 0 I- /RTD
AI 2 I- /RTD
AI 4 I- /RTD
AI 6 I- /RTD
AI 1 M+ /RTD
AI 3 M+ /RTD
AI 5 M+ /RTD
A7 M+ /RTD
AI 1 M- /RTD
AI 3 M- /RTD
AI 5 M- /RTD
AI 7 M- /RTD
10
AI 1 I+ /RTD
AI 3 I+ /RTD
AI 5 I+ /RTD
AI 7 I+ /RTD
11
AI 1 I- /RTD
AI 3 I- /RTD
AI 5 I- /RTD
AI 7 I- /RTD
Note
The RTD unused channels can be deactivated. No error will occur if an unused channel is
deactivated.
The RTD module needs to have the current loop continuous to eliminate extra stabilization
time which is automatically added to an unused channel that is not deactivated. For
consistency the RTD module should have a resistor connected (like the 2-wire RTD
connection).
A.8.2.1
Table A- 153 Ranges and accuracy for the different sensors supported by the RTD modules
Temperature
coefficient
RTD type
Under range
minimum1
Nominal
Nominal Over range
range low limit range high maximum2
limit
Normal
range
accuracy
@ 25C
Normal
range
accuracy
-20C to
60C
Pt 0.003850
Pt 10
-243.0C
-200.0C
850.0C
1000.0C
1.0C
2.0C
ITS90
DIN EN 60751
Pt 50
-243.0C
-200.0C
850.0C
1000.0C
0.5C
1.0C
Pt 100
-243.0C
-200.0C
850.0C
1000.0C
0.5C
1.0C
Pt 200
-243.0C
-200.0C
850.0C
1000.0C
0.5C
1.0C
Pt 10
-273.2C
-240.0C
1100.0C
1295C
1.0C
2.0C
Pt 50
-273.2C
-240.0C
1100.0C
1295C
0.8C
1.6C
-105.0C
-60.0C
250.0C
295.0C
0.5C
1.0C
Pt 100
Pt 200
Pt 500
Pt 1000
Pt 0.003902
Pt 0.003916
Pt 0.003920
Pt 500
Pt 1000
Pt 0.003910
Pt 100
Pt 500
Ni 0.006720
Ni 0.006180
Ni 100
Ni 120
Ni 200
Ni 500
781
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
Temperature
coefficient
RTD type
Under range
minimum1
Nominal
Nominal Over range
range low limit range high maximum2
limit
Normal
range
accuracy
@ 25C
Normal
range
accuracy
-20C to
60C
Ni 1000
LG-Ni 0.005000
LG-Ni 1000
-105.0C
-60.0C
250.0C
295.0C
0.5C
1.0C
Ni 0.006170
Ni 100
Cu 0.004270
Cu 10
-105.0C
-60.0C
180.0C
212.4C
0.5C
1.0C
-240.0C
-200.0C
260.0C
312.0C
1.0C
2.0C
Cu 0.004260
Cu 10
-60.0C
-50.0C
200.0C
240.0C
1.0C
2.0C
Cu 50
-60.0C
-50.0C
200.0C
240.0C
0.6C
1.2C
Cu 10
-240.0C
-200.0C
200.0C
240.0C
1.0C
2.0C
Cu 50
-240.0C
-200.0C
200.0C
240.0C
0.7C
1.4C
Cu 100
Cu 0.004280
Cu 100
1
Under range
minimum
Nominal range
low limit
Nominal range
high limit
Over range
maximum1
Normal range
accuracy
@ 25C
Normal range
accuracy
-20C to 60C
150
n/a
0 (0 )
27648 (150 )
176.383
0.05%
0.1%
300
n/a
0 (0 )
27648 (300 )
352.767
0.05%
0.1%
600
n/a
0 (0 )
27648 (600 )
705.534
0.05%
0.1%
Resistance values above the over-range minimum value are reported as +32767.
Note
The module reports 32767 on any activated channel with no sensor connected. If open wire
detection is also enabled, the module flashes the appropriate red LEDs.
When 500 and 1000 RTD ranges are used with other lower value resistors, the error
may increase to two times the specified error.
Best accuracy will be achieved for the 10 RTD ranges if 4 wire connections are used.
The resistance of the connection wires in 2 wire mode will cause an error in the sensor
reading and therefore accuracy is not guaranteed.
782
Technical specifications
A.8 Thermocouple and RTD signal modules (SMs)
Table A- 155 Noise reduction and update times for the RTD modules
Rejection frequency
selection
Integration time
4-channel module
10 ms
4-/2-wire: 0.142
8-channel module
3-wire: 0.285
4-/2-wire: 0.285
3-wire: 0.525
60 Hz (16.6 ms)
16.67 ms
4-/2-wire: 0.222
3-wire: 0.445
4-/2-wire: 0.445
3-wire: 0.845
50 Hz (20 ms)
20 ms
4-/2-wire: 0.262
3-wire: .505
4-/2-wire: 0.524
3-wire: 1.015
10 Hz (100 ms)
100 ms
4-/2-wire: 1.222
3-wire: 2.445
4-/2-wire: 2.425
3-wire: 4.845
To maintain module resolution and accuracy when the 400 Hz filter is selected, the integration time is 10 ms. This
selection also rejects 100 Hz and 200 Hz noise.
NOTICE
After power is applied, the module performs internal calibration for the analog-to-digital
converter. During this time the module reports a value of 32767 on each channel until valid
data is available on that channel. Your user program may need to allow for this initialization
time. Because the configuration of the module can vary the length of the initialization time,
you should verify the behavior or the module in your configuration. If required, you can
include logic in your user program to accommodate the initialization time of the module.
Hexadecimal
Pt x00
standard in
F (1 digit =
0.1 F)
Decimal
Hexadecimal
Range
32767
7FFF
> 1832.0
32767
7FFF
Overflow
1000.0
10000
2710
1832.0
18320
4790
Overrange
850.1
8501
2135
1562.1
15621
3D05
850.0
8500
2134
1562.0
15620
3D04
-200.0
-2000
F830
-328.0
-3280
F330
Units
Pt x00
standard in
C (1 digit =
0.1 C)
Decimal
> 1000.0
Units
Rated range
783
Technical specifications
A.9 Digital signal boards (SBs)
Hexadecimal
Pt x00
standard in
F (1 digit =
0.1 F)
Decimal
Hexadecimal
Range
-2001
F82F
-328.1
-3281
F32F
Underrange
-243.0
-2430
F682
-405.4
-4054
F02A
< -243.0
-32768
8000
< -405.4
-32768
8000
Pt x00
standard in
C (1 digit =
0.1 C)
Units
Decimal
-200.1
A.9
A.9.1
Units
Underflow
Order number
6ES7 221-3BD30-0XB0
6ES7 221-3AD30-0XB0
Dimensions W x H x D (mm)
38 x 62 x 21
38 x 62 x 21
Weight
35 grams
35 grams
Power dissipation
1.5 W
1.0 W
40 mA
40 mA
7 mA / input + 20 mA
15 mA / input + 15 mA
Technical data
Number of inputs
Type
Source
Source
Rated voltage
28.8 VDC
6 VDC
Surge voltage
6V
Isolation groups
Filter times
0.2, 0.4, 0.8, 1.6, 3.2, 6.4, and 12.8 ms; 0.2, 0.4, 0.8, 1.6, 3.2, 6.4, and 12.8 ms;
Selectable in groups of 4
Selectable in groups of 4
784
Technical specifications
A.9 Digital signal boards (SBs)
Technical data
4 at 55 C horizontal or 45 C
vertical
NOTICE
When switching frequencies above 20 kHz, it is important that the digital inputs receive a
square wave. Consider the following options to improve the signal quality to the inputs:
Minimize the cable length
Change a driver from a sink only driver to a sinking and sourcing driver
Change to a higher quality cable
Reduce the circuit/components from 24 V to 5 V
Add an external load at the input
Table A- 159 Wiring diagrams for the 200 kHz digital input SBs
SB 1221 DI 4 x 24 VDC, 200 kHz
(6ES7 221-3BD30-0XB0)
X19
X19
785
Technical specifications
A.9 Digital signal boards (SBs)
Table A- 160 Connector pin locations for SB 1221 DI 4 x 24 VDC, 200 kHz (6ES7 221-3BD30-0XB0)
Pin
X19
L+ / 24VDC
M / 24VDC
DI e.0
DI e.1
DI e.2
DI e.3
Table A- 161 Connector pin locations for SB 1221 DI 4 x 5 VDC, 200 kHz (6ES7 221-3AD30-0XB0)
Pin
A.9.2
X19
L+ / 5VDC
M / 5VDC
DI e.0
DI e.1
DI e.2
DI e.3
Order number
6ES7 222-1BD30-0XB0
6ES7 222-1AD30-0XB0
Dimensions W x H x D (mm)
38 x 62 x 21
38 x 62 x 21
Weight
35 grams
35 grams
Power dissipation
0.5 W
0.5 W
35 mA
35 mA
15 mA
15 mA
Number of outputs
Output type
Voltage range
L+ minus 1.5 V
L+ minus 0.7 V
Current (max.)
0.1 A
0.1 A
786
Technical specifications
A.9 Digital signal boards (SBs)
Technical data
Lamp load
--
--
11 max.
7 max.
6 max.
0.2 max.
--
--
Surge current
0.11 A
0.11 A
Overload protection
No
No
Isolation groups
0.4 A
0.4 A
None
None
Switching delay
4 at 55 C horizontal or 45 C
vertical
Because both sinking and sourcing configurations are supported by the same circuitry, the active state of a sourcing
load is opposite that of a sinking load. A source output exhibits positive logic (Q bit and LED are ON when the load has
current flow), while a sink output exhibits negative logic (Q bit and LED are OFF when the load has current flow). If the
module is plugged in with no user program, the default for this module is 0 V, which means that a sinking load will be
turned ON.
NOTICE
When switching frequencies above 20 kHz, it is important that the digital inputs receive a
square wave. Consider the following options to improve the signal quality to the inputs:
Minimize the cable length
Change a driver from a sink only driver to a sinking and sourcing driver
Change to a higher quality cable
Reduce the circuit/components from 24 V to 5 V
Add an external load at the input
787
Technical specifications
A.9 Digital signal boards (SBs)
Table A- 164 Wiring diagrams for the 200 kHz digital output SBs
SB 1222 DQ 4 x 24 VDC, 200 kHz
(6ES7 222-1BD30-0XB0)
X19
X19
For sourcing outputs, connect "Load" to "-" (shown). For sinking outputs, connect "Load" to "+". Because both sinking
and sourcing configurations are supported by the same circuitry, the active state of a sourcing load is opposite that of a
sinking load. A source output exhibits positive logic (Q bit and LED are ON when the load has current flow), while a sink
output exhibits negative logic (Q bit and LED are OFF when the load has current flow). If the module is plugged in with
no user program, the default for this module is 0 V, which means that a sinking load will be turned ON.
Table A- 165 Connector pin locations for SB 1222 DQ 4 x 24 VDC, 200 kHz (6ES7 222-1BD30-0XB0)
Pin
X19
L+ / 24VDC
M / 24VDC
DQ e.0
DQ e.1
DQ e.2
DQ e.3
Table A- 166 Connector pin locations for SB 1222 DQ 4 x 5 VDC, 200 kHz (6ES7 222-1AD30-0XB0)
Pin
X19
L+ / 5VDC
M / 5VDC
DQ e.0
DQ e.1
DQ e.2
DQ e.3
788
Technical specifications
A.9 Digital signal boards (SBs)
A.9.3
SB 1223 DI 2 x 24 VDC /
DQ 2 x 24 VDC, 200 kHz
SB 1223 DI 2 x 5 VDC /
DQ 2 x 5 VDC, 200 kHz
Order number
6ES7 223-3BD30-0XB0
6ES7 223-3AD30-0XB0
Dimensions W x H x D (mm)
38 x 62 x 21
38 x 62 x 21
Weight
35 grams
35 grams
Power dissipation
1.0 W
0.5 W
35 mA
35 mA
7 mA / Input + 30 mA
15 mA / input + 15 mA
Technical data
SB 1223 DI 2 x 24 VDC /
DQ 2 x 24 VDC, 200 kHz
SB 1223 DI 2 x 5 VDC /
DQ 2 x 5 VDC, 200 kHz
Number of inputs
Type
Source
Source
Rated voltage
28.8 VDC
6 VDC
Surge voltage
6V
Isolation groups
Filter times
0.2, 0.4, 0.8, 1.6, 3.2, 6.4, and 12.8 ms; 0.2, 0.4, 0.8, 1.6, 3.2, 6.4, and 12.8 ms;
Selectable in groups of 4
Selectable in groups of 4
Technical data
SB 1223 DI 2 x 24 VDC /
DQ 2 x 24 VDC, 200 kHz
SB 1223 DI 2 x 5 VDC /
DQ 2 x 5 VDC, 200 kHz
Number of outputs
2
source1
Output type
Voltage range
Rated value
24 VDC
5 VDC
L+ minus 1.5 V
L+ minus 0.7 V
789
Technical specifications
A.9 Digital signal boards (SBs)
Technical data
SB 1223 DI 2 x 24 VDC /
DQ 2 x 24 VDC, 200 kHz
SB 1223 DI 2 x 5 VDC /
DQ 2 x 5 VDC, 200 kHz
Current (max.)
0.1 A
0.1 A
Lamp load
--
--
11 max.
7 max.
6 max.
0.2 max.
--
--
Surge current
0.11 A
0.11 A
Overload protection
No
No
Isolation groups
0.2 A
0.2 A
None
None
Switching delay
Because both sinking and sourcing configurations are supported by the same circuitry, the active state of a sourcing
load is opposite that of a sinking load. A source output exhibits positive logic (Q bit and LED are ON when the load has
current flow), while a sink output exhibits negative logic (Q bit and LED are OFF when the load has current flow). If the
module is plugged in with no user program, the default for this module is 0 V, which means that a sinking load will be
turned ON.
NOTICE
When switching frequencies above 20 kHz, it is important that the digital inputs receive a
square wave. Consider the following options to improve the signal quality to the inputs:
Minimize the cable length
Change a driver from a sink only driver to a sinking and sourcing driver
Change to a higher quality cable
Reduce the circuit/components from 24 V to 5 V
Add an external load at the input
790
Technical specifications
A.9 Digital signal boards (SBs)
Table A- 170 Wiring diagrams for the 200 kHz digital input/output SBs
SB 1223 DI 2 x 24 VDC/DQ 2 x 24 VDC,
200 kHz (6ES7 223-3BD30-0XB0)
X19
X19
and sourcing configurations are supported by the same circuitry, the active state of a sourcing load is opposite that of a
sinking load. A source output exhibits positive logic (Q bit and LED are ON when the load has current flow), while a sink
output exhibits negative logic (Q bit and LED are OFF when the load has current flow). If the module is plugged in with
no user program, the default for this module is 0 V, which means that a sinking load will be turned ON.
Table A- 171 Connector pin locations for SB 1223 DI 2 x 24 VDC/DQ 2 x 24 VDC, 200 kHz (6ES7
223-3BD30-0XB0)
Pin
X19
L+ / 24VDC
M / 24VDC
DI e.0
DI e.1
DQ e.0
DQ e.1
Table A- 172 Connector pin locations for SB 1223 DI 2 x 5 VDC / DQ 2 x 5 VDC, 200 kHz (6ES7 2233AD30-0XB0)
Pin
X19
L+ / 5VDC
M / 5VDC
DI e.0
DI e.1
791
Technical specifications
A.9 Digital signal boards (SBs)
Pin
A.9.4
X19
DQ e.0
DQ e.1
Order number
6ES7 223-0BD30-0XB0
Dimensions W x H x D (mm)
38 x 62 x 21
Weight
40 grams
Power dissipation
1.0 W
50 mA
4 mA / Input used
Number of inputs
Type
Rated voltage
30 VDC, max.
Surge voltage
15 VDC at 2.5 mA
5 VDC at 1 mA
Isolation groups
Filter times
Number of outputs
Output type
792
Technical specifications
A.9 Digital signal boards (SBs)
Technical Data
Voltage range
20 VDC min.
Current (max.)
0.5 A
Lamp load
5W
0.6 max.
10 A max.
Surge current
Overload protection
No
Isolation groups
1A
L+ minus 48 V, 1 W dissipation
Switching delay
2 s max. off to on
10 s max. on to off
Depending on your pulse receiver and cable, an additional load resistor (at least 10% of rated current) may improve
pulse signal quality and noise immunity.
Table A- 176 Wiring diagram for the digital input/output SB
SB 1223 DI 2 x 24 VDC, DQ 2 x 24 VDC (6ES7 223-0BD30-0XB0)
X19
793
Technical specifications
A.10 Analog signal boards (SBs)
Table A- 177 Connector pin locations for SB 1223 DI 2 x 24 VDC, DQ 2 x 24 VDC (6ES7 223-0BD300XB0)
Pin
X19
L+ / 24VDC
M / 24VDC
DI e.0
DI e.1
DQ e.0
DQ e.1
A.10
A.10.1
SB 1231 AI 1 x 12 bit
Order number
6ES7 231-4HA30-0XB0
Dimensions W x H x D (mm)
38 x 62 x 21
Weight
35 grams
Power dissipation
0.4 W
55 mA
none
Number of inputs
Type
Range
Resolution
-27,648 to 27,648
794
Technical specifications
A.10 Analog signal boards (SBs)
Technical data
35V / 40 mA
Smoothing
Noise rejection
Input impedance
Differential
Common mode
Measuring principle
400 dB, DC to 60 Hz
Signal plus common mode voltage must be less than +35 V and
greater than -35 V
None
SB 1231 AI 1 x 12 bit
Overflow/underflow
Yes
no
795
Technical specifications
A.10 Analog signal boards (SBs)
Table A- 181 Wiring diagram for the analog input SB
SB 1231 AI x 12 bit (6ES7 231-4HA30-0XB0)
X19
Table A- 182 Connector pin locations for SB 1231 AI x 12 bit (6ES7 231-4HA30-0XB0)
Pin
A.10.2
X19 (gold)
No connection
No connection
AI R
AI 0+
AI 0+
AI 0-
SB 1232 AQ 1 x 12 bit
Order number
6ES7 232-4HA30-0XB0
Dimensions W x H x D (mm)
38 x 62 x 21
Weight
40 grams
Power dissipation
1.5 W
15 mA
40 mA (no load)
796
Technical specifications
A.10 Analog signal boards (SBs)
Table A- 184 Analog outputs
Technical data
SB 1232 AQ 1 x 12 bit
Number of outputs
Type
Voltage or current
Range
10 V or 0 to 20 mA
Resolution
Voltage: 12 bits
Current: 11 bits
Current: 0 to 27,648
Load impedance
Voltage: 1000
Current: 600
None
SB 1232 AQ 1 x 12 bit
Overflow/underflow
Yes
Yes
Yes
797
Technical specifications
A.10 Analog signal boards (SBs)
X19
Note: Connectors must be gold. See Appendix C, Spare Parts for order number.
Table A- 187 Connector pin locations for SB 1232 AQ 1 x 12 bit (6ES7 232-4HA30-0XB0)
Pin
X19 (gold)
AQ 0M
AQ 0
GND
No connection
No connection
No connection
A.10.3
A.10.3.1
60 Hz (16.6 ms)
50 Hz (20 ms)
10 Hz (100 ms)
4.5 ms
18.7 ms
22.0 ms
102 ms
10.6 ms
59.3 ms
70.8 ms
346 ms
798
Technical specifications
A.10 Analog signal boards (SBs)
60 Hz (16.6 ms)
50 Hz (20 ms)
10 Hz (100 ms)
33.0 ms
208 ms
250 ms
1240 ms
63.0 ms
408 ms
490 ms
2440 ms
Sample time
0.156 ms
1.042 ms
1.250 ms
6.250 ms
A.10.3.2
Sample time
SB update time
0.156 ms
0.156 ms
60 Hz (16.6 ms)
1.042 ms
1.042 ms
50 Hz (20 ms)
1.250 ms
1.25 ms
10 Hz (100 ms)
6.250 ms
6.25 ms
A.10.3.3
10 V
5 V
2.5 V
1.25V
0 to 10 V
32767
7FFF
11.851 V
5.926 V
2.963 V
1.481 V
Overflow
11.851 V
Overflow
32512
7F00
32511
7EFF
11.759 V
5.879 V
2.940 V
1.470 V
11.759 V
27649
6C01
Overshoot
range
Overshoot
range
27648
6C00
10 V
5V
2.5 V
1.250 V
Rated range
10 V
Rated
range
20736
5100
7.5 V
3.75 V
1.875 V
0.938 V
7.5 V
361.7 V
180.8 V
90.4 V
45.2 V
361.7 V
0V
0V
0V
0V
0V
-1
FFFF
-20736
AF00
-7.5 V
-3.75 V
-1.875 V
-0.938 V
-27648
9400
-10 V
-5 V
-2.5 V
-1.250 V
-27649
93FF
Negative
values are
not
supported
-32512
8100
-32513
80FF
-32768
8000
-11.759 V -5.879 V
-2.940 V
-1.470 V
-11.851 V -5.926 V
-2.963 V
-1.481 V
Undershoot
range
Underflow
799
Technical specifications
A.10 Analog signal boards (SBs)
A.10.3.4
Decimal
Hexidecimal
0 mA to 20 mA
4 mA to 20 mA
32767
7FFF
23.70 mA
22.96 mA
Overflow
32512
7F00
32511
7EFF
23.52 mA
22.81 mA
Overshoot range
27649
6C01
27648
6C00
20 mA
20 mA
Nominal range
20736
5100
15 mA
16 mA
723.4 nA
4 mA + 578.7 nA
0 mA
4 mA
-1
FFFF
-4864
ED00
-4865
ECFF
-32768
8000
A.10.3.5
Undershoot range
-3.52 mA
1.185 mA
Underflow
Output (AQ) measurement ranges for voltage and current (SB and SM)
Decimal
Hexadecimal
10 V
32767
7FFF
See note 1
32512
7F00
See note 1
32511
7EFF
11.76 V
Overshoot range
27649
6C01
27648
6C00
10 V
Rated range
20736
5100
7.5 V
361.7 V
0V
-1
FFFF
-361.7 V
-20736
AF00
-7.5 V
-27648
9400
-10 V
Overflow
800
Technical specifications
A.10 Analog signal boards (SBs)
System
Decimal
Hexadecimal
-27649
93FF
-32512
8100
-11.76 V
-32513
80FF
See note 1
-32768
8000
See note 1
Underflow
In an overflow or underflow condition, analog outputs will behave according to the device configuration properties set for
the analog signal module. In the "Reaction to CPU STOP" parameter, select either: Use substitute value or Keep last
value.
Decimal
Hexadecimal
0 mA to 20 mA
32767
7FFF
See note 1
32512
7F00
See note 1
32511
7EFF
23.52 mA
Overshoot range
27649
6C01
Rated range
27648
6C00
20 mA
20736
5100
15 mA
723.4 nA
0 mA
Overflow
In an overflow or underflow condition, analog outputs will behave according to the device configuration properties set for
the analog signal module. In the "Reaction to CPU STOP" parameter, select either: Use substitute value or Keep last
value.
A.10.4
Thermocouple SBs
A.10.4.1
Order number
6ES7 231-5QA30-0XB0
Dimensions W x H x D (mm)
38 x 62 x 21
801
Technical specifications
A.10 Analog signal boards (SBs)
Technical data
Weight
35 grams
Power dissipation
0.5 W
5 mA
20 mA
Number of inputs
Type
Floating TC and mV
Range
Resolution
Temperature
0.1 C / 0.1 F
Voltage
35 V
Noise rejection
Impedance
10 M
Accuracy
Repeatability
0.05% FS
Measuring principle
Integrating
1.5 C
500 VAC
Wire resistance
100 max.
Overflow/underflow1
Yes
Wire break2
Yes
The overflow and underflow diagnostic alarm information will be reported in the analog data values even if the alarms
are disabled in the module configuration.
When wire break alarm is disabled and an open wire condition exists in the sensor wiring, the module may report
random values.
802
Technical specifications
A.10 Analog signal boards (SBs)
The SM 1231 Thermocouple (TC) analog signal module measures the value of voltage
connected to the module inputs.
The SB 1231 Thermocouple analog signal board measures the value of voltage connected
to the signal board inputs. The temperature measurement type can be either
"Thermocouple" or "Voltage".
"Thermocouple": The value will be reported in degrees multiplied by ten (for example,
25.3 degrees will be reported as decimal 253).
"Voltage": The nominal range full scale value will be decimal 27648.
A.10.4.2
803
Technical specifications
A.10 Analog signal boards (SBs)
Under range
minimum1
Nominal
Nominal range
range low limit high limit
-210.0C
-150.0C
1200.0C
1450.0C
0.3C
0.6C
-270.0C
-200.0C
1372.0C
1622.0C
0.4C
1.0C
-270.0C
-200.0C
400.0C
540.0C
0.5C
1.0C
Over range
maximum2
Normal range 3
accuracy @ 25C
Normal range 3,
accuracy
-20C to 60C
-270.0C
-200.0C
1000.0C
1200.0C
0.3C
0.6C
R&S
-50.0C
100.0C
1768.0C
2019.0C
1.0C
2.5C
-270.0C
0.0C
1300.0C
1550.0C
1.0C
1.6C
0.0C
100.0C
2315.0C
2500.0C
0.7C
2.7C
TXK/XK(L)
-200.0C
-150.0C
800.0C
1050.0C
0.6C
1.2C
Voltage
-32511
-27648
-80mV
27648
80mV
32511
0.05%
0.1%
Thermocouple values below the under-range minimum value are reported as -32768.
Thermocouple values above the over-range minimum value are reported as 32767.
Internal cold junction error is 1.5C for all ranges. This adds to the error in this table. The signal board requires at least
30 minutes of warmup time to meet this specification.
10
100
0.306
50
20
0.066
60
16.67
0.056
4001
10
0.036
To maintain module resolution and accuracy when 400 Hz rejection is selected, the integration time is 10 ms. This
selection also rejects 100 Hz and 200 Hz noise.
It is recommended for measuring thermocouples that a 100 ms integration time be used. The
use of smaller integration times will increase the repeatability error of the temperature
readings.
Note
After power is applied to the module, it performs internal calibration for the analog to digital
converter. During this time, the module reports a value of 32767 on each channel until valid
data is available on that channel. Your user program may need to allow for this initialization
time.
804
Technical specifications
A.10 Analog signal boards (SBs)
Table A- 199 Wiring diagram for the analog input thermocouple SB
SB 1231 AI 1 x 16 bit thermocouple (6ES7 231-5QA30-0XB0)
X19
Note: Connectors must be gold. See Appendix C, Spare Parts for order number.
Table A- 200 Connector pin locations for SB 1231 AI 1 x 16 bit thermocouple (6ES7 231-5QA300XB0)
Pin
X19 (gold)
No connection
No connection
No connection
No connection
AI 0- /TC
AI 0+ /TC
A.10.5
RTD SBs
A.10.5.1
805
Technical specifications
A.10 Analog signal boards (SBs)
Table A- 201 General specifications
Technical data
Order number
6ES7 231-5PA30-0XB0
Dimensions W x H x D (mm)
38 x 62 x 2
Weight
35 grams
Power dissipation
0.7 W
5 mA
25 mA
Number of inputs
Type
Range
Resolution
Temperature
0.1 C/ 0.1 F
Voltage
35 V
Noise rejection
> 120 dB
Impedance
10 M
Accuracy
Repeatability
0.05% FS
0.5 m W
Measuring principle
Integrating
500 VAC
Wire resistance
806
Technical specifications
A.10 Analog signal boards (SBs)
Table A- 203 Diagnostics
Technical data
Overflow/underflow1, 2
Yes
Wire break
Yes
The overflow and underflow diagnostic alarm information will be reported in the analog data values even if the alarms
are disabled in the module configuration.
When wire break alarm is disabled and an open wire condition exists in the sensor wiring, the module may report
random values.
The SM 1231 RTD analog signal board measures the value of resistance connected to the
signal board inputs. The measurement type can be selected as either "Resistor" or "Thermal
resistor".
"Resistor": The nominal range full scale value will be decimal 27648.
"Thermal resistor": The value will be reported in degrees multiplied by ten (for example,
25.3 degrees will be reported as decimal 253).
The SB 1231 RTD signal board supports measurements with 2-wire, 3-wire and 4-wire
connections to the sensor resistor.
Table A- 204 Wiring diagram for SB 1231 AI 1 x 16 bit RTD
SB 1231 AI 1 x 16 bit RTD (6ES7 231-5PA30-0XB0)
AI0 X19
807
Technical specifications
A.10 Analog signal boards (SBs)
Table A- 205 Connector pin locations for SB 1231 AI 1 x 16 bit RTD (6ES7 231-5PA30-0XB0)
Pin
A.10.5.2
X19 (gold)
No connection
No connection
AI 0 M+ /RTD
AI 0 M- /RTD
AI 0 I+ /RTD
AI 0 I- /RTD
Table A- 206 Ranges and accuracy for the different sensors supported by the RTD modules
Temperature
coefficient
RTD type
Under range
minimum1
Nominal
range
low limit
Nominal
range
high limit
Over range
maximum2
Normal
range
accuracy @
25C
Normal
range
accuracy
-20C to
60C
Pt 0.003850
Pt 10
-243.0C
-200.0C
850.0C
1000.0C
1.0C
2.0C
ITS90
DIN EN 60751
Pt 50
-243.0C
-200.0C
850.0C
1000.0C
0.5C
1.0C
-243.0C
-200.0C
850.0C
1000.0C
0.5C
1.0C
Pt 10
-273.2C
-240.0C
1100.0C
1295C
1.0C
2.0C
Pt 50
-273.2C
-240.0C
1100.0C
1295C
0.8C
1.6C
-105.0C
-60.0C
250.0C
295.0C
0.5C
1.0C
Pt 100
Pt 200
Pt 500
Pt 1000
Pt 0.003902
Pt 0.003916
Pt 0.003920
Pt 100
Pt 200
Pt 500
Pt 1000
Pt 0.003910
Pt 100
Pt 500
Ni 0.006720
Ni 0.006180
Ni 100
Ni 120
Ni 200
Ni 500
Ni 1000
808
Technical specifications
A.10 Analog signal boards (SBs)
Under range
minimum1
Over range
maximum2
Normal
range
accuracy @
25C
250.0C
295.0C
0.5C
1.0C
180.0C
212.4C
0.5C
1.0C
Nominal
range
high limit
Normal
range
accuracy
-20C to
60C
Temperature
coefficient
RTD type
LG-Ni 0.005000
LG-Ni 1000
-105.0C
-60.0C
Ni 0.006170
Ni 100
-105.0C
-60.0C
Cu 0.004270
Cu 10
-240.0C
-200.0C
260.0C
312.0C
1.0C
2.0C
Cu 0.004260
Cu 10
-60.0C
-50.0C
200.0C
240.0C
1.0C
2.0C
Cu 50
-60.0C
-50.0C
200.0C
240.0C
0.6C
1.2C
Cu 10
-240.0C
-200.0C
200.0C
240.0C
1.0C
2.0C
Cu 50
-240.0C
-200.0C
200.0C
240.0C
0.7C
1.4C
Nominal
range
low limit
Cu 100
Cu 0.004280
Cu 100
1
RTD values below the under-range minimum value are reported as -32768.
RTD values above the over-range maximum value are reported as +32768.
Under range
minimum
Nominal range
low limit
Nominal range
high limit
Over range
maximum1
Normal range
accuracy
@ 25C
Normal range
accuracy
-20C to 60C
150
n/a
0 (0 )
27648 (150 )
176.383
0.05%
0.1%
300
n/a
0 (0 )
27648 (300 )
352.767
0.05%
0.1%
600
n/a
0 (0 )
27648 (600 )
705.534
0.05%
0.1%
Resistance values above the over-range maximum value are reported as 32767.
Note
The module reports 32767 on any activated channel with no sensor connected. If open wire
detection is also enabled, the module flashes the appropriate red LEDs.
When 500 and 1000 RTD ranges are used with other lower value resistors, the error
may increase to two times the specified error.
Best accuracy will be achieved for the 10 RTD ranges if 4 wire connections are used.
The resistance of the connection wires in 2 wire mode will cause an error in the sensor
reading and therefore accuracy is not guaranteed.
809
Technical specifications
A.11 BB 1297 Battery Board
Table A- 208 Noise reduction and update times for the RTD modules
Rejection frequency
selection
Integration time
10 ms
60 Hz (16.6 ms)
16.67 ms
0.036
0.071
0.056
0.111
50 Hz (20 ms)
20 ms
0.066
1.086
10 Hz (100 ms)
100 ms
0.306
0.611
To maintain module resolution and accuracy when the 400 Hz filter is selected, the integration time is 10 ms. This
selection also rejects 100 Hz and 200 Hz noise.
NOTICE
After power is applied, the module performs internal calibration for the analog-to-digital
converter. During this time the module reports a value of 32767 on each channel until valid
data is available on that channel. Your user program may need to allow for this initialization
time. Because the configuration of the module can vary the length of the initialization time,
you should verify the behavior or the module in your configuration. If required, you can
include logic in your user program to accommodate the initialization time of the module.
A.11
810
Technical specifications
A.11 BB 1297 Battery Board
Table A- 209 General specifications
Technical data
Order number
6ES7 297-0AX30-0XA0
Dimensions W x H x D (mm)
38 x 62 x 21
Weight
28 grams
Power dissipation
0.5 W
11 mA
none
Hold up time
Approximately 1 year
Battery type
Nominal voltage
3V
Nominal capacity
At least 30 mAH
Diagnostics
< 2.5 V
Battery diagnostic
Battery status
811
Technical specifications
A.12 Communication interfaces
Table A- 210 Insertion diagram for the BB 1297 battery board
BB 1297 battery board (6ES7 297-0AX30-0XA0)
A.12
Communication interfaces
A.12.1
PROFIBUS
A.12.1.1
CM 1242-5
6GK7 242-5DX30-0XE0
Interfaces
Connection to PROFIBUS
during storage
-40 C to 70 C
during transportation
-40 C to 70 C
0 C to 55 C
0 C to 45 C
95 %
812
Technical specifications
A.12 Communication interfaces
Technical specifications
Degree of protection
IP20
DC
5V
150 mA
0.75 W
Width
30 mm
Height
100 mm
Depth
75 mm
Weight
Net weight
115 g
152 g
*)The current load of an external consumer connected between VP (pin 6) and DGND (pin 5) must not exceed a maximum
of 15 mA (short-circuit proof) for bus termination.
PROFIBUS interface
Table A- 212 Pinout of the D-sub socket
Pin
Description
Pin
Description
- not used -
- not used -
- not used -
RTS
- not used -
A.12.1.2
Housing
Ground connector
CM 1243-5
6GK7 243-5DX30-0XE0
Interfaces
Connection to PROFIBUS
813
Technical specifications
A.12 Communication interfaces
Technical specifications
Permitted ambient conditions
Ambient temperature
during storage
-40 C to 70 C
during transportation
-40 C to 70 C
0 C to 55 C
0 C to 45 C
95 %
Degree of protection
IP20
DC
24 V
minimum
19.2 V
maximum
28.8 V
from 24 V DC
100 mA
0 mA
from 24 V DC
2.4 W
0W
0.45 Nm (4 lb-in)
Width
30 mm
Height
100 mm
Depth
75 mm
Weight
Net weight
134 g
171 g
*)The current load of an external consumer connected between VP (pin 6) and DGND (pin 5) must not exceed a maximum
of 15 mA (short-circuit proof) for bus termination.
Note
The CM 1243-5 (PROFIBUS master module) must receive power from the 24 VDC sensor
supply of the CPU.
814
Technical specifications
A.12 Communication interfaces
PROFIBUS interface
Table A- 214 Pinout of the D-sub socket
Pin
Description
Pin
- not used -
- not used -
- not used -
CNTR-P: RTS
- not used -
Description
Housing
Ground connector
PROFIBUS cable
NOTICE
Contacting the shield of the PROFIBUS cable
The shield of the PROFIBUS cable must be contacted.
To do this, strip the insulation from the end of the PROFIBUS cable and connect the shield
to functional earth.
A.12.2
GPRS
Note
The GPRS CP is not approved for Maritime applications
The following module does not have Maritime approval:
CP 1242-7 GPRS module
Note
To use these modules, your CPU firmware must be V2.0 or higher.
A.12.2.1
CP 1242-7
6GK7 242-7KX30-0XE0
Wireless interface
815
Technical specifications
A.12 Communication interfaces
Technical specifications
Antenna connector
SMA socket
Nominal impedance
50 ohms
Wireless connection
Maximum transmit power
GPRS
Multislot class 10
device class B
coding scheme 1...4 (GMSK)
SMS
Mode outgoing: MO
service: point-to-point
during storage
-40 C to 70 C
during transportation
-40 C to 70 C
0 C to 55 C
0 C to 45 C
95 %
Degree of protection
IP20
DC
24 V
minimum
19.2 V
maximum
28.8 V
from 24 V DC
100 mA
0 mA
from 24 V DC
2.4 W
0W
24 V DC power supply
0.45 Nm (4 lb-in)
816
Technical specifications
A.12 Communication interfaces
Technical specifications
Dimensions and weights
Width
30 mm
Height
100 mm
Depth
75 mm
Weight
Net weight
133 g
170 g
6NH9860-1AA00
GSM/GPRS
Frequency ranges
Characteristics
omnidirectional
Antenna gain
0 dB
Impedance
50 ohms
< 2,0
Max. power
20 W
Polarity
linear vertical
Connector
SMA
5m
External material
Degree of protection
IP20
Operating temperature
Transport/storage temperature
Relative humidity
100 %
External material
Construction
Dimensions (D x H) in mm
25 x 193
Weight
310 g
Fittings
54 g
Installation
817
Technical specifications
A.12 Communication interfaces
6NH9870-1AA00
GSM 900
GSM 1800/1900
Frequency ranges
2:1
1,5:1
10 dB
14 dB
Antenna gain
0 dB
Impedance
50 ohms
Max. power
10 W
Antenna cable
Cable length
1.2 m
Degree of protection
IP64
-40C to +75C
Flammability
UL 94 V2
External material
Dimensions (W x L x H) in mm
Weight
130 g
A.12.3
A.12.3.1
3RK7243-2AA30-0XB0
Interfaces
Maximum current consumption
From the SIMATIC backplane bus
Max. 100 mA
Pin assignment
Conductor cross-section
0.56 Nm
818
Technical specifications
A.12 Communication interfaces
Technical data
Permissible ambient conditions
Ambient temperature
During storage
-40 C ... 70 C
During transport
-40 C ... 70 C
0 C ... 55 C
0 C ... 45 C
95 %
Degree of protection
IP20
DC
200 mA
30 mm
Height
100 mm
Depth
75 mm
Weight
Net weight
122 g
159 g
A.12.3.2
819
Technical specifications
A.12 Communication interfaces
AS-Interface terminals
The removable terminal for connecting the AS-i cable is located behind the lower cover on
the front of the AS-i master CM 1243-2.
If the AS-i shaped cable is used, you can recognize the correct polarity of the cable by
.
means of the symbol
Information on how to remove and re-install the terminal block can be found in the system
manual "SIMATIC S7-1200 Programmable Controller" (Order No.: 6ES7298-8FA30-8AH0).
NOTICE
Maximum current carrying capacity of the terminal contacts
The current carrying capacity of the connection contacts is max. 8 A. If this value is
exceeded on the AS-i cable, the AS-i master CM 1243-2 must not be "looped in" to the ASi cable, but must instead be connected via a spur line (only one connection pair assigned
on the AS-i master CM 1243-2).
You will find additional information on connecting the AS-i cable in the section "Installation,
connection and commissioning of the modules" in the manual "AS-i Master CM 1243-2 and
AS-i data decoupling unit DCM 1271 for SIMATIC S7-1200".
Terminal assignment
Label
Meaning
ASI+
ASI
820
Technical specifications
A.12 Communication interfaces
A.12.4
A.12.4.1
CB 1241 RS485
Order number
6ES7 241-1CH30-1XB0
Dimensions W x H x D (mm)
38 x 62 x 21
Weight
40 grams
CB 1241 RS485
Type
2 V min. at RL = 100
1.5 V min. at RL = 54
Optional termination
Receiver threshold/sensitivity
Isolation
RS485 signal to chassis ground
RS485 signal to CPU logic common
1000 m max.
Baud rate
300 baud, 600 baud, 1.2 kbits, 2.4 kbits, 4.8 kbits, 9.6 kbits (default),
19.2 kbits, 38.4 kbits, 57.6 kbits, 76.8 kbits, 115.2 kbits,
Parity
No parity (default), even, odd, Mark (parity bit always set to 1),
Space (parity bit always set to 0)
1 (default), 2
Flow control
Not supported
Wait time
0 to 65535 ms
821
Technical specifications
A.12 Communication interfaces
Table A- 219 Power supply
Technical data
CB 1241 RS485
1.5 W
50 mA
80 mA
Connect "TA" and TB" as shown to terminate the network. (Terminate only the end
devices on the RS485 network.)
Use shielded twisted pair cable and connect the cable shield to ground.
You terminate only the two ends of the RS485 network. The devices in between the two end
devices are not terminated or biased. See the S7-1200 System Manual section on "Biasing
and terminating an RS485 network connector"
Table A- 220 Connector pin locations for CB 1241 RS485 (6ES7 241-1CH30-1XB0)
Pin
9-Pin connector
X20
--
--
RS485 / TxD+
3 - T/RB
RS485 / RTS
1 - RTS
--
RS485 / 5V Power
--
--
RS485 / TxD-
4 - T/RA
S7-1200 Programmable controller
822
Technical specifications
A.12 Communication interfaces
Pin
9
9-Pin connector
X20
--
Shell
7-M
See also
Biasing and terminating an RS485 network connector (Page 564)
A.12.4.2
CM 1241 RS232
Order number
6ES7 241-1AH30-0XB0
Dimensions (mm)
30 x 100 x 75
Weight
150 grams
CM 1241 RS232
Type
RS232 (full-duplex)
+/- 5 V min. at RL = 3K
3 K min.
Receiver threshold/sensitivity
Isolation
RS 232 signal to chassis ground
RS 232 signal to CPU logic common
10 m max.
Baud rate
300 baud, 600 baud, 1.2 kbits, 2.4 kbits, 4.8 kbits, 9.6 kbits (default),
19.2 kbits, 38.4 kbits, 57.6 kbits, 76.8 kbits, 115.2 kbits,
Parity
No parity (default), even, odd, Mark (parity bit always set to 1),
Space (parity bit always set to 0)
1 (default), 2
Flow control
Hardware, software
Wait time
0 to 65535 ms
823
Technical specifications
A.12 Communication interfaces
Table A- 223 Power supply
Technical data
CM 1241 RS232
1.1 W
From +5 VDC
220 mA
Description
Connector
(male)
1 DCD
2 RxD
3 TxD
4 DTR
5 GND
Logic ground
A.12.4.3
Pin
Description
6 DSR
7 RTS
8 CTS
9 RI
SHELL
Chassis ground
CM 1241 RS422/485
Order number
6ES7 241-1CH31-0XB0
Dimensions W x H x H (mm)
30 x 100 x 75
Weight
155 grams
CM 1241 RS422/485
Type
2 V min. at RL = 100
1.5 V min. at RL = 54
824
Technical specifications
A.12 Communication interfaces
Technical data
CM 1241 RS422/485
Receiver threshold/sensitivity
Isolation
RS485 signal to chassis ground
RS485 signal to CPU logic common
Baud rate
300 baud, 600 baud, 1.2 kbits, 2.4 kbits, 4.8 kbits, 9.6 kbits (default),
19.2 kbits, 38.4 kbits, 57.6 kbits, 76.8 kbits, 115.2 kbits,
Parity
No parity (default), even, odd, Mark (parity bit always set to 1),
Space (parity bit always set to 0)
1 (default), 2
Flow control
Wait time
0 to 65535 ms
CM 1241 RS422/485
1.2 W
From +5 VDC
240 mA
Description
Connector
(female)
2 TxD+
4 RTS
5 GND
Description
6 PWR
Not connected
3 TxD+
2
Pin
8 TXD9 TXDSHELL
The RTS is a TTL level signal and can be used to control another half duplex device based on this signal. It is active
when you transmit and is inactive all other times.
825
Technical specifications
A.13 TeleService (TS Adapter and TS Adapter modular)
A.13
A.14
A.15
Capacity
6ES7 954-8LF01-0AA0
24 MB
6ES7 954-8LE01-0AA0
12 MB
6ES7 954-8LB01-0AA0
2 MB
Input simulators
8 Position Simulator
14 Position Simulator
Order number
6ES7 274-1XF30-0XA0
6ES7 274-1XH30-0XA0
Dimensions W x H x D (mm)
43 x 35 x 23
67 x 35 x 23
Weight
20 grams
30 grams
Points
14
CPU 1214C
WARNING
These input simulators are not approved for use in Class I DIV 2 or Class I Zone 2
hazardous locations. The switches present a potential spark hazard/explosion hazard if
used in a Class I DIV 2 or Class I Zone 2 location.
826
Technical specifications
A.16 I/O expansion cable
PP
24 VDC sensor
power out
PP
A.16
6ES7 290-6AA30-0XA0
Cable length
2m
Weight
200 g
Refer to the installation section (Page 56) for information about installing and removing the
S7-1200 expansion cable.
827
Technical specifications
A.17 Companion products
A.17
Companion products
A.17.1
A.17.2
828
The CPU has an internal power supply that provides power for the CPU itself, for any
expansion modules, and for other 24 VDC user power requirements.
There are four types of expansion modules:
Signal modules (SM) are installed on the right-side of the CPU. Each CPU allows a
maximum number of signal modules possible without regard to the power budget.
CPU 1214C and CPU 1215C allows 8 signal modules
CPU 1212C allows 2 signal modules
CPU 1211C allows no signal modules
Communication modules (CM), are installed on the left-side of the CPU. A maximum of 3
communication modules is allowed for any CPU without regard to the power budget.
Signal boards (SB), communications boards (CB), and battery boards (BB) are installed
on top of the CPU. A maximum of 1 signal board, communication board, or battery board
is allowed for any CPU.
Use the following information as a guide for determining how much power (or current) the
CPU can provide for your configuration.
Each CPU supplies both 5 VDC and 24 VDC power:
The CPU provides 5 VDC power for the expansion modules when an expansion module
is connected. If the 5 VDC power requirements for expansion modules exceed the power
budget of the CPU, you must remove expansion modules until the requirement is within
the power budget.
Each CPU has a 24 VDC sensor supply that can supply 24 VDC for local input points or
for relay coils on the expansion modules. If the power requirement for 24 VDC exceeds
the power budget of the CPU, you can add an external 24 VDC power supply to provide
24 VDC to the expansion modules. You must manually connect the 24 VDC supply to the
input points or relay coils.
WARNING
Connecting an external 24 VDC power supply in parallel with the DC sensor supply can
result in a conflict between the two supplies as each seeks to establish its own preferred
output voltage level.
The result of this conflict can be shortened lifetime or immediate failure of one or both
power supplies, with consequent unpredictable operation of the PLC system.
Unpredictable operation could result in death, severe personal injury and/or property
damage.
The DC sensor supply on the CPU and any external power supply should provide power
to different points. A single connection of the commons is allowed.
829
Some of the 24V power input ports in the PLC system are interconnected, with a logic
common circuit connecting multiple M terminals. The CPU 24V power supply input, the SM
relay coil power input, and a non-isolated analog power supply input are examples of circuits
that are interconnected when designated as not isolated in the data sheets. All non-isolated
M terminals must connect to the same external reference potential.
WARNING
Connecting non-isolated M terminals to different reference potentials will cause unintended
current flows that may cause damage or unpredictable operation in the PLC and connected
equipment.
Such damage or unpredictable operation could result in death, severe personal injury
and/or property damage.
Always be sure that all non-isolated M terminals in a PLC system are connected to the
same reference potential.
Information about the power budgets of the CPUs and the power requirements of the signal
modules is provided in the technical specifications (Page 699).
Note
Exceeding the power budget of the CPU may result in not being able to connect the
maximum number of modules allowed for your CPU.
5 VDC
1600 mA
24 VDC
400 mA
Minus
830
5 VDC
24 VDC
System requirements
5 VDC
24 VDC
14 * 4 mA = 56 mA
50 mA
2 * 4 mA = 8 mA
220 mA
3 SM 1223, 5 V power
3 * 145 mA = 435 mA
1 SM 1221, 5 V power
1 * 105 mA = 105 mA
3 * 8 * 4 mA = 96 mA
3 * 8 * 11 mA = 264 mA
8 * 4 mA = 32 mA
Total requirements
810 mA
456 mA
Equals
Current balance
5 VDC
24 VDC
790 mA
(56 mA)
5 VDC
24 VDC
Minus
System requirements
5 VDC
24 VDC
Total requirements
Equals
Current balance
5 VDC
24 VDC
831
832
Order numbers
C.1
Table C- 1
CPU modules
S7-1200 CPUs
CPU models
Order Number
CPU 1211C
CPU 1212C
CPU 1214C
CPU 1215C
C.2
Table C- 2
6ES7 211-1AE31-0XB0
6ES7 211-1BE31-0XB0
6ES7 211-1HE31-0XB0
6ES7 212-1AE31-0XB0
6ES7 212-1BE31-0XB0
6ES7 212-1HE31-0XB0
6ES7 214-1AG31-0XB0
6ES7 214-1BG31-0XB0
6ES7 214-1HG31-0XB0
6ES7 215-1AG31-0XB0
6ES7 215-1HG31-0XB0
Signal modules (SMs), signal boards (SBs) and battery boards (BB)
Signal modules (SMs)
Signal modules
Digital input
Digital output
Digital input /
output
Order Number
SM 1221 8 x 24 VDC Input (Sink/Source)
6ES7 221-1BF30-0XB0
6ES7 221-1BH30-0XB0
6ES7 222-1BF30-0XB0
6ES7 222-1BH30-0XB0
6ES7 222-1HF30-0XB0
6ES7 222-1XF30-0XB0
6ES7 222-1HH30-0XB0
6ES7 223-1BH30-0XB0
6ES7 223-1BL30-0XB0
6ES7 223-1PH30-0XB0
6ES7 223-1PL30-0XB0
6ES7 223-1QH30-0XB0
833
Order numbers
C.3 Communication
Signal modules
Analog input
Analog output
Order Number
SM 1231 4 x Analog Input
6ES7 231-4HD30-0XB0
6ES7 231-4HF30-0XB0
6ES7 231-5ND30-0XB0
6ES7 232-4HB30-0XB0
6ES7 232-4HD30-0XB0
Analog input /
output
6ES7 234-4HE30-0XB0
RTD and
thermocouple
SM 1231 TC 4 x 16 bit
6ES7 231-5QD30-0XB0
SM 1231 TC 8 x 16 bit
6ES7 231-5QF30-0XB0
6ES7 231-5PD30-0XB0
6ES7 231-5PF30-0XB0
Table C- 3
Order Number
Digital input
6ES7 221-3BD30-0XB0
6ES7 221-3AD30-0XB0
6ES7 222-1BD30-0XB0
6ES7 222-1AD30-0XB0
6ES7 223-0BD30-0XB0
6ES7 223-3BD30-0XB0
6ES7 223-3AD30-0XB0
6ES7 232-4HA30-0XB0
6ES7 231-4HA30-0XB0
Digital output
Digital input /
output
Analog
Battery
C.3
Table C- 4
6ES7 231-5QA30-0XB0
6ES7 231-5PA30-0XB0
BB 1297 Battery
6ES7 297-0AX30-0XA0
Communication
Communication module (CM)
Order Number
RS232, RS422,
and RS485
CM 1241 RS232
RS232
CM 1241 RS422/485
RS422/485
6ES7 241-1CH31-0XB0
PROFIBUS
CM 1243-5
PROFIBUS Master
6GK7 243-5DX30-0XE0
CM 1242-5
PROFIBUS Slave
6GK7 242-5DX30-0XE0
CM 1243-2
AS-i Master
3RK7 243-2AA30-0XB0
AS-i Master
6ES7 241-1AH30-0XB0
834
Order numbers
C.4 Other modules
Table C- 5
Table C- 6
Order Number
CB 1241 RS485
RS485
6ES7 241-1CH30-1XB0
Order Number
CP 1242-7
6GK7 242-7KX30-0XE0
Table C- 7
GPRS
TeleService
TS Adapter
Order Number
TS Adapter IE Basic
6ES7 972-0EB00-0XA0
TS Module GSM
6GK7 972-0MG00-0XA0
TS Module RS232
6ES7 792-0MS00-0XA0
TS Module Modem
6ES7 972-0MM00-0XA0
TS Module ISDN
6ES7 972-0MD00-0XA0
Table C- 8
Accessories
Accessory
Order Number
Antenna
Table C- 9
ANT794-4MR
GSM/GPRS antenna
6NH9 860-1AA00
ANT794-3M
Flat antenna
6NH9 870-1AA00
Connectors
Type of Connector
Order Number
RS485
6ES7 972-0BA42-0XA0
6ES7 972-0BA60-0XA0
C.4
Table C- 10
Other modules
Companion products
Item
Order Number
6EP1 332-1SH71
Ethernet switch
6GK7 277-1AA10-0AA0
835
Order numbers
C.5 Memory cards
C.5
Table C- 11
Memory cards
Memory cards
Order Number
SIMATIC MC 2 MB
6ES7 954-8LB01-0AA0
SIMATIC MC 12 MB
6ES7 954-8LE01-0AA0
SIMATIC MC 24 MB
6ES7 954-8LF01-0AA0
C.6
Table C- 12
Order Number
6AV6 647-0AA11-3AX0
6AV6 647-0AB11-3AX0
6AV6 647-0AD11-3AX0
6AV6 647-0AF11-3AX0
6AV6 647-0AG11-3AX0
C.7
Table C- 13
Item
Order Number
6ES7 290-6AA30-0XA0
I/O simulator
6ES7 274-1XF30-0XA0
6ES7 274-1XH30-0XA0
CPU 1211C/1212C
6ES7 291-1AA30-0XA0
Connector block
CPU 1214C
6ES7 291-1AB30-0XA0
CPU 1215C
6ES7 291-1AC30-0XA0
Signal module, 45 mm
6ES7 291-1BA30-0XA0
Signal module, 70 mm
6ES7 291-1BB30-0XA0
Communication module
6ES7 291-1CC30-0XA0
Tin
7 terminal, 4/pk
6ES7 292-1AG30-0XA0
8 terminal, 4/pk
6ES7 292-1AH30-0XA0
11 terminal, 4/pk
6ES7 292-1AL30-0XA0
12 terminal, 4/pk
6ES7 292-1AM30-0XA0
14 terminal, 4/pk
6ES7 292-1AP30-0XA0
20 terminal, 4/pk
6ES7 292-1AV30-0XA0
836
Order numbers
C.8 Programming software
Item
Order Number
Gold
C.8
Table C- 14
6ES7 292-1BC30-0XA0
6ES7 292-1BF30-0XA0
6ES7 292-1BF30-0XB0
6ES7 292-1BG30-0XA0
6ES7 292-1BL30-0XA0
Programming software
Programming software
SIMATIC software
Order Number
Programming software
6ES7 822-1AA01-0YA5
Visualization software
6AV2100-0AA01-0AA0
6AV2101-0AA01-0AA5
C.9
Table C- 15
6ES7 822-0AA01-0YA0
6AV2102-0AA01-0AA5
6AV2103-0DA01-0AA5
6AV2103-0HA01-0AA5
6AV2103-0XA01-0AA5
Documentation
S7-1200 documentation
Printed documentation
Language
Order Number
German
6ES7 298-8FA30-8AH0
English
6ES7 298-8FA30-8BH0
French
6ES7 298-8FA30-8CH0
Spanish
6ES7 298-8FA30-8DH0
Italian
6ES7 298-8FA30-8EH0
Chinese
6ES7 298-8FA30-8KH0
German
6ES7 298-8FA30-8AQ0
English
6ES7 298-8FA30-8BQ0
French
6ES7 298-8FA30-8CQ0
Spanish
6ES7 298-8FA30-8DQ0
Italian
6ES7 298-8FA30-8EQ0
Chinese
6ES7 298-8FA30-8KQ0
837
Order numbers
C.9 Documentation
838
Index
A
ABS (absolute value), 202
AC
grounding, 63
inductive loads, 64
isolation guidelines, 62
wiring guidelines, 61, 63
Access protection
CPU, 164
Accessing
data logs from PC, 516
user-defined Web pages, 539
ACOS (arc cosine or inverse cosine), 205
Active/passive communication
configuring the partners, 127, 494
connection IDs, 427
parameters, 129
Active/Passive connection, 425
Ad hoc mode
ISO on TCP, 431
TCP, 431
ADD (add), 199
Add new device
CPU, 120
detect existing hardware, 121
unspecific CPU, 121
Adding inputs or outputs to LAD or FBD
instructions, 35
Addressing
Boolean or bit values, 88
individual inputs (I) or outputs (Q), 88
memory areas, 88
process image, 88
Air flow, 44
Alarm
peripheral access, 471
Alarm interrupt, 296
Aliases in user-defined Web pages, 529
Analog I/O
configuration, 125
conversion to engineering units, 34, 92, 220
input representation (current), 770, 800
input representation (voltage), 770, 799
output representation (current), 771, 801
output representation (voltage), 771, 800
839
Index
B
Basic panels (HMI), 26
Baud rate, 584
Binding to a CPU or memory card, 166
Bit logic, 175
Block
consistency check, 172
Block move (MOVE_BLK), 207
Blocks
block calls, 67
calling an FB or FC with SCL, 157
copying blocks from an online CPU, 168
counters (quantity and memory requirements), 21,
707, 717, 726, 736
data block (DB), 67
download, 168
events, 75
function (FC), 67, 150
function block (FB), 67, 150
initial value of an FB, 150
instance data block (DB), 150
interrupts, 21, 75, 707, 716, 726, 736
linear and structured programs, 146
monitoring, 21, 707, 716, 726, 736
nesting depth, 21, 67, 707, 716, 725, 735
number of code blocks, 21, 707, 716, 725, 735
number of OBs, 21, 75, 707, 716, 726, 736
C
CALCULATE, 33, 198
scaling analogs, 34
Calendar, 247
Call structure, 172
Calling code blocks within the user program, 148
CAN_DINT (cancel time delay interrupt), 294
Capturing values from an online DB, 684
CB 1241 RS485 specifications, 822
CE approval, 699
CEIL (ceiling), 218
Certificate Import Wizard, 560
Changing settings for STEP 7, 36
Char (character data type), 98
Character position
message length, 593
Character sequence
message end, 592
message start, 588
Clearance
airflow and cooling, 44
Clock
memory byte, 85
RD_LOC_T (read local time), 249
RD_SYS_T (read system time), 249
time-of-day clock, 86
WR_SYS_T (write system time), 249
CM 1241
RS232 specifications, 824
RS422/RS485 specifications, 824
Code block
binding to a CPU or memory card, 166
block calls, 67
calling code blocks within the user program, 148
copy protection, 166
840
Index
841
Index
Configuration
add modules, 122
AS-i, 483
AS-i address, 484
AS-i port, 483
communication interfaces, 583
communication load, 81
CPU parameters, 123
cycle time, 80
discover, 121
download, 168
Ethernet port, 136
HSC (high-speed counter), 346
IP address, 136
MAC address, 136
modules, 125
network connection, 126
PLC to PLC communication, 464
ports, 583
PROFIBUS, 479
PROFIBUS address, 479
PROFIBUS port, 479
PROFINET, 136
receive message, 587
startup parameters, 110
time synchronization property (PROFINET), 142
user-defined Web pages, 535
user-defined Web pages (multiple languages), 554
Configuration of transmitted message, 586
Connection contacts
Maximum current carrying capacity, 820
Connections
configuration, 129
connection IDs, 427
Ethernet protocols, 493
number of connections (PROFINET), 424
partners, 127, 494
S7 connection, 493
types of communication, 423
types, multi-node connections, 493
Connections, Web server, 558
Connector
installation and removal, 55
Consistency check, 172
Constraints
user-defined Web pages, 539
Web server, 558
Contact information, 3
Control DB for user-defined Web pages
global commands, 555
parameter to WWW instruction, 537
request commands and states, 555
842
Index
D
Data block
capturing values, 684
CONF_DATA, 454
global data block, 87, 151
instance data block, 87
organization block (OB), 148
overview, 67, 151
resetting the start values, 684
single FB with multiple instance DBs, 151
valid DB numbers, 67
data block control, 332
Data blocks for user-defined Web pages
importing fragments, 533
Data handling block (DHB), 151
Data log
Data log overview, 313
843
Index
Device
PROFINET IO, 468
Device configuration, 119, 461
add modules, 122
add new device, 120
AS-i, 483
AS-i port, 483
configuring the CPU, 123
configuring the modules, 125
discover, 121
download, 168
Ethernet port, 136
network connection, 126
PROFIBUS, 479
PROFIBUS port, 479
PROFINET, 136
time synchronization property (PROFINET), 142
unplugged modules, 41
Device names
PROFINET IO, 469
DeviceStates, 299
Diagnostic data
Reading out with GET_DIAG, 302
Diagnostic error interrupt OB, 74
Diagnostic standard Web page, 510
Diagnostics
cycle time, 680
DeviceStates, 299
diagnostics buffer, 680
GET_DIAG, 302
interrupt OB, 471
LED indicators, 673
LED instruction, 298
memory usage, 680
ModuleStates, 301
status, 471
status indicator, 85
watch table, 685
Diagnostics buffer, 86, 680
Digital I/O
configuration, 125
status indicators, 674
Digital signal board (SB) specifications
SB 1221 DI 4, 200 kHz, 784
SB 1222 DQ 4, 200 kHz, 786
SB 1223 DI 2 / DQ 2, 792
SB 1223 DI 2 / DQ 2, 200 kHz, 789
Digital signal module (SM)
SM 1221, 745
SM 1222, 748, 750
SM 1223, 755
DIN rail, 47
844
Index
E
Electromagnetic compatibility (EMC), 702
EN and ENO (power flow), 163
EN_AIRT (enable alarm interrupt), 296
ENCO (encode), 240
End conditions, 590
End message character, 592
Enum types in user-defined Web pages, 529, 530
Environmental
industrial environments, 701
operating conditions, 702
transport and storage conditions, 702
Error codes
common errors for extended instructions, 335
RALRM, 280
RDREC, 280
WRREC, 280
Errors
diagnostic errors, 78
time errors, 77
Ethernet
ad hoc mode, 431
connection IDs, 427
DPNRM_DG, 286
DPRD_DAT, 284
DPWR_DAT, 284
GET, 489
IP address, 136
MAC address, 136
network connection, 126
F
Factory settings reset, 678
FAQs, 4
Favorites toolbar, 32
FB (function block)
overview, 67
valid FB numbers, 67
FBD (function block diagram), 156
FC (function), 67, 150
valid FC numbers, 67
FieldRead, 209
FieldWrite, 209
FILL_BLK, 211
FIND (find substring), 273
Firmware update, 115
First scan indicator, 85
845
Index
G
General technical specifications, 699
Generating user-defined Web page DBs, 537
GET, 489
configuring the connection, 128
Get LED status, 298
GET_DIAG, 302
GetError, 236
GetErrorID, 237
H
Hardware configuration, 119
add modules, 122
add new device, 120
AS-i, 483
AS-i port, 483
configuring the CPU, 123
configuring the modules, 125
discover, 121
download, 168
Ethernet port, 136
network connection, 126
PROFIBUS, 479
PROFIBUS port, 479
PROFINET, 136
Hardware flow control, 585
Hardware-interrupt OB, 74
High-speed counter
configuration, 346
HSC, 337
operation, 339
High-speed counter (HSC)
cannot be forced, 689
HMI devices
configuring PROFINET communication, 462
network connection, 126
overview, 26
Hotline, 3
HSC (high-speed counter)
configuration, 346
operation, 337, 339
HTA (hexadecimal to ASCII), 266
HTML listing, user-defined Web page example, 545
HTML pages, user-defined, 521
accessing S7-1200 data, 522
developing, 521
language locations, 554
page locations, 535
S7-1200 Programmable controller
846
Index
refreshing, 522
HTTP connections, Web server, 558
Installation
air flow, 44
clearance, 44
communication board (CB), 51
I
communication module (CM), 53
cooling, 44
I memory
CPU, 49
force, 688
expansion cable, 56
force operation, 689
grounding, 63
force table, 688
guidelines, 43
HSC (high-speed counter), 339
inductive loads, 64
monitor, 683
isolation guidelines, 62
monitor LAD, 684
lamp loads, 64
peripheral input addresses (force table), 688
mounting dimensions, 46
watch table, 683
overview, 43, 47
I/O
power budget, 44
access errors, PROFINET, 472
signal board (SB), 51
addressing, 92
signal module (SM), 24, 52
analog input representation (current), 770, 800
terminal block connector, 55
analog input representation (voltage), 770, 799
thermal zone, 44, 46
analog output representation (current), 771, 801
TS Adapter and TS module, 58
analog output representation (voltage), 771, 800
TS Adapter on a DIN rail, 59
analog status indicators, 674
TS Adapter on a wall, 60
digital status indicators, 674
TS Adapter SIM card, 58
force, 688
wiring guidelines, 61, 63
force operation, 689
Installation requirements, 29
inductive loads, 64
Instance data block, 87
monitoring status in LAD, 684
Instructions
monitoring with a watch table, 685
ABS (absolute value), 202
step response times (CPU), 711, 720, 730, 740
ACOS (arc cosine or inverse cosine), 205
step response times (SB), 798
ADD (add), 199
step response times of the signal module (SM), 769
adding inputs or outputs to LAD or FBD
Identification standard Web page, 510
instructions, 35
Idle line, 587, 588
AND, 239
Importing Siemens security certificate, 560
AS-i distributed I/O, 274
IN_RANGE (within a range), 197
ASIN (arc sine or inverse sine), 205
INC (increment), 202
ATAN (arc tangent or inverse tangent), 205
Indexing arrays with variables, 210
ATH (ASCII to hexadecimal), 265
Inductive loads, 64
ATTACH, 288
Information resources, 4
bit logic, 175
Initial values
block move (MOVE_BLK), 207
capturing and resetting the start values of a DB, 684
CALCULATE, 33, 198
Input simulators, 827
calendar, 247
Inputs and outputs
CAN_DINT (cancel time delay interrupt), 294
monitoring, 683
CASE (SCL), 224
INSERT (insert substring), 271
CEIL (ceiling), 218
Inserting a device
clock, 249
unspecific CPU, 121
columns and headers, 36, 637
Inserting instructions
common parameters, 458
drag and drop, 31
compare, 196
drag and drop between editors, 37
CONCAT (concatenate), 268
favorites, 32
CONTINUE (SCL), 227
Inserting the memory card into CPU, 108
S7-1200 Programmable controller
System Manual, 04/2012, A5E02486680-06
847
Index
848
Index
849
Index
K
Know-how protection
password protection, 165
L
Label, 230
LAD (ladder logic)
monitor, 683, 684
overview, 155
program editor, 684
status, 683, 684, 688
Lamp loads, 64
Languages, user-defined Web pages, 551
Latency, 75
LED (Get LED status), 298
LED indicators
communication interface, 563, 673
CPU status, 673
LED instruction, 298
LEFT (left substring), 269
LEN (length), 267
Length
message, 593
Length m, 593
Length n, 593
LENGTH parameter, SEND_PTP, 577
Limit, 204
Linear programming, 146
LN (natural logarithm), 205
Load memory, 20
CPU 1211C, 705
CPU 1212C, 715
CPU 1214C, 724
CPU 1215C, 734
memory card, 107
program card, 107
transfer card, 107
Load memory, user-defined Web pages, 539
Local time
RD_LOC_T (read local time), 249
Local/Partner connection, 425
Logging in/out
standard Web pages, 507
850
Index
851
Index
dimensions, 46
expansion cable, 56
grounding, 63
guidelines, 43
inductive loads, 64
isolation, 62
lamp loads, 64
overview, 47
signal board (SB), 51
signal module (SM), 52
terminal block connector, 55
thermal zone, 44, 46
wiring guidelines, 61, 63
MOVE, 207
MRES
operator panel, 38
MUL (multiply), 199
Multi-node connections
connection types, 493
Ethernet protocols, 493
Multiple AWP variable definitions, 533
MUX (multiplex), 242
My Documentation Manager, 4
N
N_TRIG, 181
NEG (negation), 201
Negative edge, 180
Nesting depth, 67
Network communication, 460
Network connection
configuration, 126
multiple CPUs, 463, 465, 469, 478, 482
Network time protocol (NTP), 141
No restart, 69
NORM_X (normalize), 219
Normalizing analogs, 220
NOT OK instruction, 197
Numbers
binary, 94
integer, 95
real, 95
O
Off-delay (TOF), 182
operation, 186
OK instruction, 197
On-delay delay (TON), 182
operation, 186
852
Index
STEP 7, 837
visualization software, 837
WinCC, 837
Organization block
call, 73
calling code blocks within the user program, 148
configuring operation, 150
creating, 149
function, 73
know-how protection, 165
linear and structured programming, 146
multiple cyclic, 149
overview, 67
priority classes, 73
processing, 148
startup processing, 71
OUT_RANGE (outside of a range), 197
Output parameters, 150
configuring pulse channels, 312
pulse outputs, 311
P
P_TRIG, 181
Panels (HMI), 26
Parameter assignment, 150
Parameters configuration
LENGH and BUFFER for SEND_PTP, 577
receive, 468
transmit, 467
Parity, 584
Passive/active communication
configuring the partners, 127, 494
connection IDs, 427
parameters, 129
Password protection
access to the CPU, 164
binding to a CPU or memory card, 166
code block, 165
copy protection, 166
CPU, 164
empty transfer card, 118
lost password, 118
Peripheral access alarms, 471
PID
overview, 347
PID_3STEP, 355
PID_3Step algorithm, 347, 355
PID_Compact, 350
PID_Compact algorithm, 347, 350
PLC
add modules, 122
853
Index
Portal view, 30
Positive edge, 180
Power budget, 44
example, 830
form for calculations, 831
overview, 829
Power requirements
calculating a power budget, 830
form for calculations, 831
power budget, 829
Priority
priority class, 73
priority in processing, 75
Priority class, 73
Process image
force, 688
force operation, 689
monitor, 683, 684
status, 683, 684, 688
PROFIBUS
add CM 1243-5 (DP master) module, 478
add DP slave, 478
CM 1242-5 (DP slave) module, 473
CM 1243-5 (DP master) module, 473
distributed I/O instructions, 274
DPNRM_DG, 286
DPRD_DAT, 284
DPWR_DAT, 284
GET, 489
master, 472
network connection, 126, 478
PROFIBUS address, 479
PROFIBUS address properties, 480
PUT, 489
RALRM, 278
RDREC, 275
S7 connection, 493
slave, 472
WRREC, 275
PROFIBUS address, 479, 480
configuring, 479
PROFINET
ad hoc mode, 431
configuring communication between CPU and HMI
device, 462
configuring the IP address, 123
connection IDs, 427
CPU-to-CPU communication, 464
device naming and addressing, 143
diagnostics, 472
distributed I/O instructions, 274
DPRD_DAT, 284
DPWR_DAT, 284
Ethernet address properties, 137
GET, 489
IP address, 136
IP address assignment, 143
MAC address, 136
network connection, 126, 463, 465, 469
number of communication connections, 424
overview, 430
PLC-to-PLC communication, 464
PUT, 489
RALRM, 278
RDREC, 275
S7 connection, 493
system start-up time, 142
T_CONFIG, 451
TCON, 439
TDISCON, 439
testing a network, 139
time synchronization, 123
time synchronization property, 142
TRCV, 439
TRCV_C, 432
TSEND, 439
TSEND_C, 432
TURCV, 447
TUSEND, 447
types of communication, 423
WRREC, 275
PROFINET IO
Adding a device, 468
Assigning a CPU, 469
Assigning device names, 469
Assigning device names online, 676
Device names, 469
Devices, 468
Online device names, 676
PROFINET RT, 430
Program
binding to a CPU or memory card, 166
calling code blocks within the user program, 148
capturing values of a DB, 684
copying blocks from an online CPU, 168
download, 168
linear and structured programs, 146
memory card, 107
organization block (OB), 148
password protection, 165
priority class, 73
resetting the start values of a DB, 684
Program card
configure the startup parameters, 110
854
Index
creating, 113
inserting into CPU, 108
operation, 107
order number, 826
overview, 107
Program control (SCL), 222
CASE, 224
CONTINUE, 227
EXIT, 228
FOR, 225
GO TO, 229
IF-THEN, 223
REPEAT, 227
RETURN, 229
WHILE, 226
Program editor
capturing values of a DB, 684
monitor, 684
resetting the start values of a DB, 684
status, 684
Program execution, 67
Program information
In the call structure, 172
Program structure, 148
calling code blocks, 148
Programming
adding inputs or outputs to LAD or FBD
instructions, 35
binding to a CPU or memory card, 166
block calls, 67
calling code blocks within the user program, 148
comparing and synchronizing code blocks, 681
counters, 190
data block (DB), 67
drag and drop between editors, 37
expandable instructions, 35
favorites, 32
FBD (function block diagram), 156
function (FC), 150
function block (FB), 67, 150
initial value of an FB, 150
inserting instructions, 31
instance data block (DB), 150
LAD (ladder), 155
linear program, 146
operating modes of the CPU, 69
organization block (OB), 148
PID overview, 347
PID_3STEP, 355
PID_3Step algorithm, 347, 355
PID_Compact, 350
PID_Compact algorithm, 347, 350
855
Index
Q
Q memory
configuring pulse channels, 312
pulse outputs, 311
QRY_CINT (query cyclic interrupt), 293
Queuing, 75
Quotation mark conventions, Web server, 534
R
RALRM, 278, 280
Rated voltages, 704
RCV_CFG (receive configuration), 571
RCV_PTP (receive Point-to-Point), 578
RCV_RST (receiver reset), 580
RD_LOC_T (read local time), 249
RD_SYS_T (read system time), 249
RDREC, 275, 280
RE_TRIGR, 234
READ_DBL, 332
Reading HTTP variables, 526
Receive configuration errors, 575
Receive message configuration, 587
PtP example program, 598
Receive parameters configuration, 468
Receive runtime return values, 578
Referencing enum types, user-defined Web pages, 530
Refreshing user-defined Web pages, 522
Relay electrical service life, 705
REPLACE (replace substring), 272
Replacing modules, 41
Requirements, installation, 29
Reset, 178
S
S_CONV (value to string conversions), 255
S_MOV (string move), 254
S7 communication
configuring the connection, 128
S7-1200
access protection, 164
add modules, 122
add new device, 120
airflow, 44
AS-i, 483
AS-i address, 484
AS-i port, 483
capturing values of a DB, 684
clearance, 44
communication board (CB), 24
communication load, 81
communication module (CM), 24
communication processor (CP), 24
S7-1200 Programmable controller
856
Index
857
Index
858
Index
859
Index
860
Index
cycle time, 81
data block (DB), 67
device configuration, 119
download, 168
drag and drop between editors, 37
Ethernet port, 136
expandable inputs or outputs, 35
favorites, 32
force, 688
force operation, 689
function (FC), 150
function block (FB), 67, 150
HSC configuration, 346
initial value of an FB, 150
inserting instructions, 31
instance data block (DB), 150
linear and structured programs, 146
memory card, 107, 826
monitoring, 683, 684
network connection, 126
operating modes, 69
operation, 685
operator panel, 38
password protection, 165
Portal view, 30
priority class (OB), 73
PROFIBUS, 479
PROFIBUS port, 479
PROFINET, 136
program card, 107
Project view, 30
RD_LOC_T (read local time), 249
RD_SYS_T (read system time), 249
resetting the start values of a DB, 684
run time meter, 251
RUN/STOP buttons, 37
startup processing, 71
time synchronization property (PROFINET), 142
transfer card, 107
types of code blocks, 67
unplugged modules, 41
valid FC, FB, and DB numbers, 67
WR_SYS_T (write system time), 249
STEP 7 programming
PtP example program, 602
user-defined Web pages, 537
STEP 7 web pages, 4
Stop bits, 584
STOP mode, 69, 679
enable outputs in STOP mode, 687
force operation, 689
operator panel, 38
toolbar buttons, 37
STP (stop PLC scan cycle), 235
STRG_VAL (string to value), 255
String
S_MOVE (string move), 254
string data overview, 254
String data type, 98
string operations overview, 267
Structured programming, 146, 148
calling blocks, 148
SUB (subtract), 199
Subnet mask, 136
Support, 3
SWAP, 212
SWITCH, 231
Switching languages, user-defined Web pages, 551
Synchronization
time synchronization property (PROFINET), 142
System clock
RD_LOC_T (read local time), 249
RD_SYS_T (read system time), 249
WR_SYS_T (write system time), 249
System memory byte, 85
System requirements, 29
T
T_ADD (add time), 248
T_COMBINE (combine times), 249
T_CONFIG, 451
T_CONV (convert time), 247
T_DIFF (time difference), 248
T_SUB (subtract timet), 248
Tags
force, 688
force operation, 689
monitor, 683
status, 683
TAN (tangent), 205
Task cards
columns and headers, 36, 637
TCON, 439
configuration, 127
connection IDs, 427
connection parameters, 129
TCON_Param, 129
TCP
ad hoc mode, 431
connection configuration, 127
connection IDs, 427
parameters, 129
protocol, 430
861
Index
862
Index
U
UDP
connection configuration, 127
parameters, 129
UDP protocol, 430
UFILL_BLK (uninterruptible fill), 211
Uninterruptible move (UMOVE_BLK), 207
Unplugged modules, 41
Unspecific CPU, 121
Updating user-defined Web pages, 522
Uploading
copying blocks from an online CPU, 168
user program, 168
User interface
Portal view, 30
Project view, 30
User program
adding inputs or outputs to LAD or FBD
instructions, 35
binding to a CPU or memory card, 166
calling code blocks within the user program, 148
copying blocks from an online CPU, 168
download, 168
drag and drop between editors, 37
expandable instructions, 35
favorites, 32
inserting instructions, 31
linear and structured programs, 146
memory card, 107
organization block (OB), 148
password protection, 165
program card, 107
transfer card, 107
User-defined Web pages, 503, 521
accessing from PC, 539
activating and deactivating from control DB, 555
AWP commands for accessing S7-1200 data, 522
configuring, 535
creating fragments, 532
creating with HTML editor, 521
deleting program blocks, 537
downloading corresponding DBs, 538
enabling with WWW instruction, 537
example, 540
generating program blocks, 537
handling special characters, 534
HTML listing, 545
importing fragments, 533
load memory constraints, 539
manual fragment DB control, 555
multiple language configuration, 554
multiple languages, 551
V
VAL_STRG (value to string), 255
Variable index for an array, 210
Variable Status standard Web page, 515
Variables
monitoring and modifying from PC, 515
Versions of instructions, 36, 637
Visualization
HMI devices, 26
W
Wait time, 584
Warm restart, 69
Watch table
enable outputs in STOP mode, 687
force, 170
memory card, 107
monitor, 683
operation, 685
trigger values, 686
Watchdog, 234
Web pages
STEP 7, 4
Web server, 503
constraints, 558
enabling, 504
maximum HTTP connections, 558
Quotation mark conventions, 534
standard Web pages, 505
update rate, 504
Web server, user-defined Web pages, 521
Wiring diagrams
CPU 1211C, 714
863
Index
X
XON / XOFF, 586
XOR (exclusive OR), 239
864
HMI
Comfort Panels
___________________
Preface
1
___________________
Overview
SIMATIC HMI
HMI devices
Comfort Panels
2
___________________
Safety instructions
Mounting and connecting the
3
___________________
HMI device
4
___________________
Commissioning the device
5
___________________
Commissioning a project
Operating Instructions
6
___________________
Operating a project
7
___________________
Maintenance and care
8
___________________
Technical specifications
A
___________________
Technical Support
B
___________________
Abbreviations
03/2012
A5E03404994-02
Legal information
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 relevant 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, 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.
Trademarks
All names identified by are registered trademarks of 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 NRNBERG
GERMANY
A5E03404994-02
04/2012 Technical data subject to change
Preface
Purpose of the operating instructions
These operating instructions contain information based on the requirements defined by DIN
EN 62079 for mechanical engineering documentation. This information relates to the place of
use, transport, storage, mounting, use and maintenance.
These operating instructions are intended for:
Users
Commissioning engineers
Maintenance personnel
Read especially the information in the chapter "Safety instructions" (Page 25).
You can find more information such as operating instructions, examples and reference
information in the online help of WinCC.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
Preface
CAUTION
Manual belongs to HMI device
The supplied manual belongs to the HMI device and is also required to repeat
commissioning. Keep all supplied and supplementary documentation for the entire
service life of the HMI device.
Provide all stored documents to subsequent owners of the HMI device.
Trademarks
The following designations marked with the symbol are registered trademarks of
Siemens AG:
HMI
SIMATIC
WinCC
Style conventions
Style Convention
Scope
"Add screen"
Path information
<F1>, <Alt+P>
Keyboard operation
Comfort Panels
Preface
Naming conventions
Term
Applies to
Plant
System
Machining center
KP400 Comfort
KP1500 Comfort
HMI device
KTP400 Comfort
TP1500 Comfort
KP700 Comfort
TP1900 Comfort
TP700 Comfort
TP2200 Comfort
KP900 Comfort
TP900 Comfort
KP1200 Comfort
TP1200 Comfort
Key model
KP400 Comfort
KP1500 Comfort
KP700 Comfort
KP900 Comfort
KP1200 Comfort
Touch model
KTP400 Comfort
TP1500 Comfort
TP700 Comfort
TP1900 Comfort
TP900 Comfort
TP2200 Comfort
TP1200 Comfort
Device
WinCC
Figures
This manual contains illustrations of the described devices. The illustrations can deviate from
the particularities of the delivered device.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
Preface
Comfort Panels
Table of contents
Preface ...................................................................................................................................................... 3
1
Overview.................................................................................................................................................. 13
1.1
1.2
1.3
1.3.1
1.3.2
1.3.3
1.4
Accessories..................................................................................................................................21
1.5
1.6
2.2
2.3
3.2
3.3
3.3.1
3.3.2
3.3.3
3.3.4
3.3.5
3.3.6
3.3.7
3.3.8
3.3.9
3.3.10
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
Table of contents
Overview ..................................................................................................................................... 55
Backup design............................................................................................................................. 55
Changing memory cards ............................................................................................................. 58
Front operator controls................................................................................................................ 60
4.2
4.2.1
4.2.2
4.2.3
4.3
4.3.1
4.3.2
4.3.3
4.3.4
4.3.5
4.3.6
4.4
4.4.1
4.4.2
4.4.2.1
4.4.2.2
4.4.2.3
4.4.2.4
4.4.3
4.4.4
4.4.4.1
4.4.4.2
4.4.4.3
4.4.4.4
4.4.4.5
4.4.4.6
4.4.4.7
4.4.4.8
4.4.4.9
4.4.4.10
4.4.4.11
4.4.4.12
4.4.5
4.4.6
4.4.7
4.4.8
4.4.9
4.4.10
4.4.11
4.4.11.1
4.4.11.2
Comfort Panels
Table of contents
4.4.12
4.4.12.1
4.4.12.2
4.4.12.3
4.4.12.4
4.4.12.5
4.4.12.6
4.4.13
4.4.13.1
4.4.13.2
4.4.13.3
4.4.13.4
4.4.14
4.4.15
4.4.16
5
Overview ....................................................................................................................................137
5.2
5.3
5.4
5.5
5.5.1
5.5.2
5.5.3
Transfer......................................................................................................................................140
Setting transfer mode.................................................................................................................140
Start transfer ..............................................................................................................................142
Testing a project ........................................................................................................................143
5.6
5.6.1
5.6.2
5.7
5.7.1
5.7.2
5.8
5.8.1
5.8.2
5.8.3
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
Table of contents
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
Maintaining and caring for the touch screen and keyboard overlay ......................................... 165
7.2
7.3
7.4
8.2
8.2.1
8.2.2
8.3
8.3.1
8.3.2
8.3.3
8.3.4
8.3.5
8.3.6
8.3.7
8.3.8
8.3.9
8.3.10
8.3.11
8.3.12
8.3.13
Comfort Panels
10
Table of contents
8.4
8.4.1
8.4.2
8.4.3
8.4.3.1
8.4.3.2
8.4.3.3
8.5
8.5.1
8.5.2
8.5.3
8.5.4
8.5.5
8.5.6
8.5.7
8.5.8
8.5.9
8.5.10
8.6
8.6.1
8.6.2
8.6.3
8.6.4
8.6.5
8.6.6
8.7
8.8
A.2
Troubleshooting .........................................................................................................................214
A.3
System events............................................................................................................................214
Abbreviations......................................................................................................................................... 215
Glossary ................................................................................................................................................ 217
Index...................................................................................................................................................... 223
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
11
Table of contents
Comfort Panels
12
Overview
1.1
Product description
SIMATIC HMI Comfort Panels are a fully redesigned product line of the Touch Panels and
Key Panels. The product line includes the following models:
Five key panels (operated by keyboard) with 4", 7", 9", 12" and 15" displays
Six touch panels (operated by touch screen) with 7", 9", 12", 15", 19" and 22" displays.
One Key&Touch Panel (operated by keyboard and touch screen) with 4" display size
All devices offer the same excellent functionality and are configured exclusively with the
innovative HMI software, WinCC. The software is integrated into the engineering framework,
"Totally Integrated Automation Portal".
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
13
Overview
1.1 Product description
Mounting format
Mounting and operation of the touch models in horizontal and vertical format
The respective format must be selected during the configuration of the user
interface.
Interfaces
Display
Operation
Text and numbers are entered with the key models using the keypad system
familiar from cell phones
Intuitive operating scheme of the key models based on the proven technique
used for cell phone keypads
All freely configurable function keys have LEDs.
All keys have a clear pressure point for additional safety in the operation.
Software
Data storage
One slot for using the service concept for simplified restart in the event of
service. Project data and device settings are updated automatically on the
system card.
No data loss in case of power failure. Applies to the HMI device and inserted
SIMATIC HMI memory cards 2 GB.
Controller
The system diagnostics of SIMATIC controllers can be read from the HMI
device, which means no additional programming device is required.
Comfort Panels
14
Overview
1.2 Product package
1.2
Product package
The following components are included in the product package of the HMI device.
Name
Figure
Quantity
HMI device
Installation instructions
KTP400 Comfort
KP400 Comfort
12
TP700 Comfort
KP700 Comfort
16
TP900 Comfort
KP900 Comfort
TP1200 Comfort
KP1200 Comfort
Strain relief
12
TP1500 Comfort
KP1500 Comfort
TP1900 Comfort
TP2200 Comfort
KTP400 Comfort
KP400 Comfort
TP700 Comfort
KP700 Comfort
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
15
Overview
1.3 Configuration of the devices
1.3
1.3.1
Front view
The following illustration shows the front view of the HMI devices, FKP400 Comfort (left) and
KTP400 Comfort (right):
Comfort Panels
16
Overview
1.3 Configuration of the devices
Rear view
The following illustration shows the rear view of the HMI devices, KP400 Comfort (left) and
KTP400 Comfort (right):
Rating plate
Slots for SD memory cards - accessible from the device side
Labeling strips
Side view
The following illustration shows the side views of the HMI devices, KP400 and KTP400
Comfort:
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
17
Overview
1.3 Configuration of the devices
1.3.2
Front view
The figure below shows the front view of the HMI devices, using the KP700 Comfort and
TP700 Comfort as examples.
Rear view
The figure below shows the back view of the HMI devices, using the KP700 Comfort and
TP700 Comfort as examples.
Rating plate
Slots for SD memory cards
Labeling strips
Comfort Panels
18
Overview
1.3 Configuration of the devices
Side view
The figure below shows the side views of the HMI devices, using the KP700 Comfort and
TP700 Comfort as examples.
1.3.3
Ports
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
19
Overview
1.3 Configuration of the devices
Further information
Use the X1 or X60 interface to connect a configuration PC. Use the X61 / X62 interfaces to
connect peripheral devices such as a printer or keyboard. Use the X90 interface to connect a
loudspeaker.
You can affix the USB and PROFINET connecting cables to the rear panel of the HMI device
with cable ties.
With the 4" and 7" models, protect the cables with a separate strain relief. Attach the strain
relief to the HMI device.
See also
Description of the ports (Page 205)
Comfort Panels
20
Overview
1.4 Accessories
1.4
Accessories
Accessories are not included in the product package of the HMI device, but can ordered in
the Internet at Industry Mall (http://mall.automation.siemens.com).
This section contains the number of accessories available at the time of publication of the
operating instructions.
Order no.
6AV6671-8XE00-0AX0
6AV6671-8XD00-0AX0
Protective foil
Name
Order no.
6AV2124-6DJ00-0AX0
6AV2124-6GJ00-0AX0
6AV2124-6JJ00-0AX0
6AV2124-6MJ00-0AX0
6AV2124-6QJ00-0AX0
6AV2124-6UJ00-0AX0
6AV2124-6XJ00-0AX0
Memory media
Use only the following storage media for the HMI device.
Name
Order no.
6AV2181-8XP00-0AX0
6ES7648-0DC50-0AA0
Order no.
6AV2181-4DM10-0AX0
6AV2181-4XM00-0AX0
Name
Order no.
Set with 20 plastic clamps for KP400 Comfort and KTP400 Comfort
6AV6671-8KX00-0AX2
6AV6671-8XK00-0AX0
Service packages
Set with 20 steel mounting clamps for KP1500 Comfort, TP1500 Comfort, 6AV6671-8XK00-0AX3
TP1900 Comfort and TP2200 Comfort
Set of 10 power supply terminals
6AV6671-8XA00-0AX0
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
21
Overview
1.5 The HMI device in the operating process
1.5
&RQILJXUDWLRQ3&
+0,GHYLFH
Process management
Process management is marked by two-way communication between HMI device and PLC.
3/&
+0,GHYLFH
3/&
You then use the HMI device to operate and monitor the process.
Comfort Panels
22
Overview
1.6 Software options
1.6
Software options
The following software add-ons are available for the HMI devices:
Add-on
WinCC /Sm@rtServer
Description
1
WinCC /Audit 1
Printer driver
See also
Printers approved for SIMATIC Panels and Multi Panels
(http://support.automation.siemens.com/WW/view/en/11376409)
Printing with SIMATIC Comfort HMI devices
(http://support.automation.siemens.com/WW/view/en/58205602)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
23
Overview
1.6 Software options
Comfort Panels
24
Safety instructions
2.1
Hazardous areas
When operating the HMI device in hazardous areas the following warning applies.
WARNING
Explosion Hazard
Do not disconnect while circuit is live unless area is known to be non-hazardous.
Substitution of components may impair suitability for Class I, Division 2 or Zone 2.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
25
Safety instructions
2.2 Security information
2.2
Security information
Siemens offers IT security mechanisms for its portfolio of automation and drive products in
order to support safe operation of the plant/machine. We recommend that you stay informed
about the IT security developments for your products. For information on this topic, refer to:
Industry Online Support (http://www.siemens.de/automation/csi_en_WW): You can register
for a product-specific newsletter here.
For the safe operation of a plant/machine, however, it is also necessary to integrate the
automation components into an overall IT security concept for the entire plant/machine,
which corresponds to the state-of-the-art IT technology. You can find information on this
under: Industrial Security (http://www.siemens.com/industrialsecurity).
Products used from other manufacturers should also be taken into account here.
Comfort Panels
26
Safety instructions
2.3 Notes about usage
2.3
Industrial applications
The HMI device is designed for industrial applications. It conforms to the following standards:
Requirements for emissions EN 61000-6-4: 2007
Requirements for interference immunity EN 61000-6-2: 2005
Use in residential areas
NOTICE
HMI device not intended for use in residential area
The HMI device is not intended for use in residential areas. Operation of an HMI device in
residential areas can have a negative influence on radio or TV reception.
If the HMI device is used in a residential area, you must take measures to achieve Limit
Class B conforming to EN 55011 for RF interference.
Suitable measures for achieving the degree of noise suppression for Limit Class B include,
for example:
Installation of the HMI device in grounded control cabinets
Use of filters in electrical supply lines
Individual acceptance is required.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
27
Safety instructions
2.3 Notes about usage
Comfort Panels
28
3.1.1
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
29
3.1.2
3.1.3
Comfort Panels
30
Mounting position
Select one of the approved mounting positions for your HMI device. The approved mounting
positions are described in the following sections.
r&7373
r&DOORWKHUV
6,0$7,&+0,
0 C
r&
r&
r&
r&
rr
rr
A maximum ambient temperature of +50 C is permissible for vertical mounting (0 tilt angle);
a maximum of +40 C is permitted for inclined mounting.
The ambient temperature for TP1900 and TP2200 Comfort when installed vertically should
not exceed +45 C.
r&
0 C
r&
r&
r&
r&
rr
rr
A maximum ambient temperature of +40 C is permissible for vertical mounting (0 tilt angle);
a maximum of +35 C is permitted for inclined mounting.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
31
3.1.4
Checking clearances
The following clearances are required around the HMI device to ensure sufficient selfventilation:
15 mm to the right and 15 mm to the left of the mounting cutout (in the x direction) for
inserting the mounting clamps during installation
At least 50 mm above and 50 mm below the mounting cutout (in the y direction) for
ventilation
At least 10 mm behind the rear panel of the HMI device (in the z direction)
The following figure shows the clearances during the mounting of the HMI devices in
horizontal and vertical formats:
[
\
\
At least 15 mm distance
At least 50 mm distance
At least 10 mm distance
NOTICE
Ensure that the maximum ambient temperature is not exceeded when mounting the device
in a cabinet and especially in a closed enclosure.
Comfort Panels
32
3.1.5
Degrees of protection
The degrees of protection of the HMI device can only be guaranteed if the following
requirements are met:
Material thickness at the mounting cutout for a protection rating of IP65 or Front face
only Type 4X/Type 12 (indoor use only): 2 mm to 6 mm
Permitted deviation from plane at the mounting cutout: 0.5 mm
This condition must be fulfilled for the mounted HMI device.
Permissible surface roughness in the area of the seal: 120 m (Rz 120)
KP400 Comfort
OP 77B
KTP400 Comfort
TP 177B 4"
KP700 Comfort
OP 277 6"
TP700 Comfort
KP900 Comfort
KP1500 Comfort
Please note that although the dimensions for the mounting cut-out are the same, the device
depth and/or the enclosure front dimensions may differ from the respective dimensions of the
predecessor devices.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
33
w
h
+1
0
+1
0
.3
.73
.3
73
.3
73
.3
73
.3
73
73
73
Width and height should be reversed accordingly when mounting in vertical format.
3.1.6
Comfort Panels
34
Procedure
Proceed as follows:
1. Edit the template on a PC and then print it.
2. Apply a fixing spray film to the labeling strips.
The printout can be made water and smudge-proof with a fixing spray. The color printer
ink will not bleed onto the keyboard foil as well.
3. Cut out the labeling strip.
4. Ensure that the corners are cut at a 45 angle to it easier to slide them into the slot.
5. When the ink has dried, slide the labeling strips into the slot up to the end of the guide.
The image below shows the guides and labeling strips for the bottom two rows of keys on
the KP1200 Comfort.
Guide; the maximum number of guides depends on the HMI device used
Labeling strips
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
35
Result
The labeling strips protrude approximately 3 cm out of the slot. The template dimensions for
the labeling strips are designed so that the labeling is correctly placed for the function keys.
It is not necessary to secure the labeling strip.
When mounting the HMI device, ensure that the labeling strips do not get jammed between
the mounting cut-out and the HMI device.
See also
Accessories (Page 21)
Comfort Panels
36
3.2
Mounting clamps
HMI device
KTP400
Type
Quantity
.73&RPIRUW
KP400
.3&RPIRUW
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
37
Comfort
HMI device
TP700
Mounting clamps
Type
Quantity
10
73&RPIRUW
12
KP700
TP900
TP1200
.3&RPIRUW
73&RPIRUW
73&RPIRUW
KP900
16
KP1200
.3&RPIRUW
.3&RPIRUW
KP1500
12
TP1500
.3&RPIRUW
73&RPIRUW
73&RPIRUW
73&RPIRUW
TP1900
TP2200
Requirement
All packaging components and protective foils should be removed from the HMI device.
To install the HMI device, you need the mounting clamps from the accessory kit.
The mounting seal must be fitted on the HMI device.
Comfort Panels
38
Procedure
NOTICE
Risk of guaranteed degree of protection not being met
If the mounting seal is damaged or protrudes beyond the HMI device, the degree of
protection is not ensured.
Checking the placement of the mounting seal
To avoid leakage around the mounting cutout, do not install the mounting seal turned inside
out. If the mounting seal is damaged, order a replacement seal.
NOTICE
Installation of the HMI device
Always mount the HMI device according to the instructions in this manual.
Mounting clamps for 4" models:
73
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
39
Result
The HMI device is mounted and the relevant degree of protection is ensured at the front.
See also
Accessories (Page 21)
Comfort Panels
40
3.3
3.3.1
Notes on connection
Requirement
The HMI device must be mounted according to the specifications of these operating
instructions.
Always use shielded standard cables for the data cable.
Additional information is available in the catalog and online order system at Industry Mall
(http://mall.automation.siemens.com).
Connection sequence
Connect the HMI device in the following sequence:
1. Equipotential bonding
2. Power supply
Perform a power-up test to ensure the power supply is connected with the correct
polarity.
3. PLC
4. Configuring PC as necessary
5. I/Os as necessary
NOTICE
Damage to the HMI device
If you do not keep to the connection sequence you could damage the HMI device.
Ensure you connect the HMI device in the sequence stipulated above.
Disconnect the HMI device by completing the above steps in reverse order.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
41
3.3.2
Comfort Panels
42
Wiring diagram
The figure below shows the equipotential bonding connection for the TP700 Comfort; it also
applies to all other Comfort devices.
73
Control cabinet
Equipotential bonding rail
Equipotential bonding cable
PROFINET data line
PROFIBUS data line
Cable clip
Ground connection
CAUTION
Damage to the interface modules possible
Cable shielding is not suitable for equipotential bonding.
Use only the prescribed equipotential bonding conductors. The minimum cross-section of a
conductor used for equipotential bonding is 16 mm. The interface modules may otherwise
be damaged or destroyed.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
43
3.3.3
Wiring diagram
The following figure shows the connection between the power supply and HMI device.
'&9
*1'
Comfort Panels
44
When connected to the HMI device's USB port, the following uninterruptible power supplies
are supported:
SITOP DC UPS modules as of a rated power value of 6 A, e.g. 6EP1931-2DC42
See also
Setting the uninterruptible power supply (Page 106)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
45
3.3.4
Wiring diagram
The following figure shows how to connect the HMI device to a configuration PC.
Comfort Panels
46
Procedure
Proceed as follows:
1. Switch off the HMI device.
2. Switch on the configuration PC.
3. Connect the HMI device to the configuration PC either via the PROFINET (LAN) or via
the USB type Mini-B interface. Please note the following for USB connection:
Connect the USB Mini B connector of the USB cable to the USB type Mini B interface
of the HMI device.
Connect the USB A connector of the USB cable to a free USB interface of the
configuration PC.
4. Switch on the HMI device.
Result
The configuration PC and HMI device are connected.
If you have connected the HMI device directly to the configuration PC via the PROFINET
(LAN) interface, you will then need to assign an IP address to the HMI device.
If Windows XP is installed on the configuration PC and you have connected the HMI device
to the configuration PC via USB, you will be prompted to install the USB driver. You can find
the USB driver in the installation folder of WinCC.
Note
Updating the operating system
If there is no serviceable HMI device image on the HMI device, you can only update the
operating system by restoring the factory setting. When restoring the factory settings,
connect the PC to the HMI device via the PROFINET (LAN) interface.
Connecting multiple HMI devices in succession
If you connect more than one HMI device with the same IP address in succession to a single
configuring PC, you need to ping the configuring PC once from the HMI device on each
changeover of the HMI device.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
47
3.3.5
Wiring diagram
The figure below shows how to connect the HMI device to a PLC.
NOTICE
Only use approved cables
If you do not use approved cables to connect a SIMATIC S7 controller, you may experience
malfunctions.
Only use approved cables to connect a SIMATIC S7 controller.
Standard cables are available for the connection. You can find additional information on this
in the Internet at Industry Mall (http://mall.automation.siemens.com).
Connecting PROFINET
NOTICE
PROFINET IO communication
For instructions regarding the installation of PROFINET networks, refer to the "PROFINET
System Description" manual.
The following applies for devices with 7" or larger displays: The HMI device has an internal
switch. This enables you to set up a ring topology, for example, with the HMI device without
an external switch. Use the X1 interface to set up a ring topology for devices with a 15" or
larger display.
See also
Communication with PLCs (Page 208)
Comfort Panels
48
3.3.6
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
49
3.3.7
Connecting a printer
Wiring diagram
The following figure shows the connection between the printer and HMI device.
Comfort Panels
50
3.3.8
See also
Certificates and approvals (Page 169)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
51
3.3.9
Procedure
Proceed as follows:
1. Switching on the power supply.
The screen lights up after power is switched on. An animated graphic is displayed during
startup.
If the HMI device fails to start, you have probably crossed the wires on the power supply
terminal. Check the connected wires and change their connection. The Loader opens
after the operating system has started.
The HMI device automatically switches to "Transfer" mode during initial startup under the
following conditions:
No project is loaded on the HMI device.
At least one data channel has been configured.
During this process the following dialog appears:
Comfort Panels
52
Result
The Loader appears again.
Note
When restarting the system, a project may already be loaded on the HMI device. The project
will then start after an configurable delay or when you press the "Start" button.
Use the relevant operating element to close the project.
Refer to your plant documentation to find any additional information on this topic.
Function test
Perform a function test following commissioning. The HMI device is fully functional when one
of the following states is indicated:
The "Transfer" dialog is displayed.
The Loader is displayed.
A project is started.
See also
Configuring the data channel (Page 113)
3.3.10
Fasteners
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
53
Proceed as follows:
1. Position the strain relief flush with the HMI device.
2. Push the strain relief to the right.
3. Secure the strain relief with the Torx screw.
Comfort Panels
54
Overview
4.1.1
Backup design
Introduction
The HMI devices use the following memory types:
Internal memory
Memory card
System memory card
You can also connect a USB mass storage device to the USB port.
Internal memory
The following data is saved in the internal memory:
Operating system
Project file
License keys
User administration
Recipes*)
*) To save recipes in the internal memory, select "\Flash\" as the path in WinCC.
Note
Cyclic write access to the internal memory is not allowed
Cyclic write access to internal memory is not allowed, because this reduces the service life
of internal memory and of the HMI device.
To prolong the service life of your device, you should preferably use external memory cards
to store and log data, for example the SIMATIC HMI Memory Card.
Note
Number of allowed files in the root directory of the internal memory
The number of files in the root directory is limited to 256. The number of files is not limited in
the subdirectories of the internal memory.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
55
Memory card
The following data are saved on the memory card:
Logs
Backups
Recipes*)
*) To save recipes on the memory card, select "\StorageCard SD\" as the path in WinCC.
You can use commercially available memory cards with the "SD(IO / HC)" or "MMC" format.
For data consistency reasons, Siemens recommends the use of the SIMATIC HMI Memory
Card as the memory card, see Accessories (Page 21).
Note
Data consistency
When the HMI device is switched off, consistency of the stored data is ensured only for the
SIMATIC HMI Memory Card 2 GB.
With commercially available memory cards, switching off the device may result in the loss of
saved data, for example, due to a power failure.
The consistency of data stored in archives is only guaranteed if you use RDB format.
Comfort Panels
56
.3&RPIRUW
.3&RPIRUW
.3&RPIRUW
.3&RPIRUW
73&RPIRUW
73&RPIRUW
73&RPIRUW
73&RPIRUW
73&RPIRUW
73&RPIRUW
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
57
4.1.2
Introduction
The memory cards and system memory cards are protected by a safety lock. The memory
card and system memory card can be hot-swapped during ongoing operation of the HMI
device.
NOTICE
Potential loss of data
The data on the memory card is lost if you attempt to remove it while the HMI device is
accessing its data.
Do not remove the memory card while data is being accessed. Observe the corresponding
alarms on the screen.
Removing the system memory card while the project is running
If you remove the system storage card while a project is running, the project is ended.
The following figure shows the slots with safety lock:
.3&RPIRUW
.73&RPIRUW
.3&RPIRUW
.3&RPIRUW
.3&RPIRUW
.3&RPIRUW
73&RPIRUW
73&RPIRUW
73&RPIRUW
73&RPIRUW
73&RPIRUW
73&RPIRUW
Comfort Panels
58
Requirement
Memory card and/or system memory card are read-only
Procedure
Note
Format of the system memory card
Only a SIMATIC HMI Memory Card 2 GB may be used as a system memory card. All other
memory cards are not recognized as system memory card by the HMI device.
Proceed as follows:
1. Push the safety switch to the appropriate position.
2. To remove the memory card and/or system memory card, briefly press the card in
question.
The card will be released and can be removed.
This step is not required during commissioning.
3. Insert the new memory card and/or system memory card.
4. Push the safety switch back to the initial position.
If you have inserted the system card, you are prompted by the HMI device to enable the
service concept.
Result
Memory and/or system memory card are replaced.
See also
Enabling the service concept (Page 62)
Accessories (Page 21)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
59
4.1.3
Comfort Panels
60
NOTICE
Unintentional action possible
Do not carry out several operations simultaneously. You may otherwise trigger an
unintentional action.
Do not press more than two keys simultaneously
Damage to the keyboard possible
Using hard instruments to press the keys considerably reduces the service life of the key
mechanism.
Always use your fingers to operate the keys of your HMI device.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
61
4.2
4.2.1
Requirement
A new SIMATIC HMI Memory Card 2 GB is available.
The slot for the system memory card is enabled (factory state).
If required, check the setting in the Control Panel under "OP Properties", "System Card"
tab, see section "Disabling the service concept (Page 64)".
Procedure
To enable the service concept for commissioning on an HMI device, proceed as follows:
1. Switch on the power supply of the HMI device.
2. Move the safety lock into position 2.
3. Insert the memory card into the slot provided for it.
4. Push the safety switch back to the initial position.
5. Confirm the "Use system card?" prompt asking you to enable the service concept.
The data from the internal memory are copied to the system memory card.
Note
No prompt in the event of a defective system memory card
If the system memory card is defective, the "Use system card?" prompt is not displayed.
Replace the system memory card with a new SIMATIC HMI Memory Card 2 GB.
Result
The service concept is enabled. The data on the system memory card are continually
updated automatically.
See also
Changing memory cards (Page 58)
Comfort Panels
62
4.2.2
Requirement
The service concept is enabled on the defective HMI device.
A replacement device of the same type is available.
The slot for the system memory card is enabled on the replacement device (factory
state).
If required, check the setting in the Control Panel under "OP Properties", "System Card"
tab, see section "Disabling the service concept (Page 64)".
Procedure
Proceed as follows:
1. Switch off the HMI device.
2. Remove the defective HMI device.
3. Mount the replacement device.
4. Switch on the power supply of the replacement device.
5. Insert the system memory card of the defective HMI device in the corresponding slot of
the replacement device.
6. Confirm the "Use system card?" prompt asking you to enable the service concept.
The content of the system memory card is copied into the internal memory of the HMI
device. The HMI device is then restarted.
Note
No prompt in the event of a defective system memory card
If the system memory card is defective, the "Use system card?" prompt is not displayed.
Replace the system memory card with the system memory card of a different HMI device
of the same type. If no other system memory card is available, proceed as follows:
Update the operating system and transfer the HMI device image of the defective HMI
device to the replacement device.
Transfer the project of the defective HMI device to the replacement device.
Result
The service concept is enabled. The data on the system memory card are continually
updated automatically.
See also
Changing memory cards (Page 58)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
63
4.2.3
Procedure
Proceed as follows:
1. Open the Control Panel.
2. Open the "OP Properties" dialog by using the "OP" icon.
3. Open to the "System Card" tab.
Result
The service concept is disabled. You can enable the service concept again at any time in the
"System Card" tab. If you do not wish to enable the service concept again, protect the
Control Panel with a password.
See also
Changing password protection (Page 86)
Comfort Panels
64
4.3
4.3.1
Loader
Overview
The loader is displayed automatically when the HMI device is switched on. If there is a
project on the HMI device, it is started automatically after a delay time. If you operate the
loader during this delay time, the project no longer starts automatically.
If you stop on the HMI device Runtime or show the Windows CE Desktop, the loader will
open automatically.
The following figure shows the loader without version information in the title bar:
Function
In addition to the Control Panel, the loader is the central operator control on the HMI device.
The Loader buttons have the following functions:
Press "Transfer" to set the HMI device to "Transfer" mode.
You can only enable "Transfer" mode when transfer has been authorized in the Control
Panel.
Press "Start" to start an available project on the HMI device.
Press "Control Panel" to open the Control Panel of the HMI device.
You can use the Control Panel to set the parameters for the HMI device, such as the
settings for the transfer.
Press "Taskbar" to activate the taskbar with the Windows CE Start menu open.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
65
Depending on the software installed, other symbols may be displayed in the desktop's status
bar.
Comfort Panels
66
4.3.2
Control Panel
The HMI device's Control Panel is similar to the control panel on a PC.
The following figure shows the Control Panel with an open dialog:
Menu
Discard entries and close dialog
Apply entries and close dialog
67
4.3.3
Installed programs
Overview
The following programs are installed on the HMI devices by default:
Viewers for documents in "PDF", "Excel" and "Word" format
Media Player for Windows CE
Internet Explorer for Windows CE
The programs can be found on the desktop or in the Start menu under "Programs". Each of
these programs can also be opened from the HMI project.
Viewer
Icon
PDF Viewer
Word Viewer
DOC, RTF
Excel Viewer
XL*
Media Player
WMA, MPEG
Internet Explorer
HTML
Viewer
All viewers share a Zoom function. The Excel Viewer also offers the following functions:
Switch between spreadsheet tabs
Split the spreadsheet
Change line height and column width
Media Player
Media Player for Windows CE is installed on the HMI device. You can use the Media Player
to play video sequences for servicing and maintenance, for example.
Note
The video file names may not contain any special characters except for "_" .
Media Player for Windows CE and the Media Player version that can run on a PC differ in
terms of functionality.
You can find additional information at the Microsoft website.
Comfort Panels
68
Internet Explorer
Internet Explorer for Windows CE and the Internet Explorer version which can run on a PC
differ in terms of functionality.
Internet Explorer for Windows CE has separate proxy settings that are independent of the
settings in the control panel of the HMI device.
You can find additional information at the Microsoft website.
4.3.4
Alphanumeric assignment
<space>\@#%?!"':;<>()[]{}$&%^~|_1
ABC2
DEF3
GHI4
JKL5
MNO6
PRQRS7
TUV8
WXYZ9
+-*/=0
The characters available for input depends on the text box involved. The following figure
shows the entry of an alphanumeric value using the system keys:
General functions
You initiate functions on HMI devices with keys either using a key or keyboard shortcuts.
With keyboard shortcuts, hold the first key down. Then press the second button.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
69
Function
Switch between upper and lower case:
Operating buttons
Comfort Panels
70
Function
Enables the taskbar and opens the Start menu.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
71
Function
Activates the menu.
To navigate the menu, use the cursor keys.
Selects or clears a check box.
The following figure shows the "Enable Transfer" and "Remote Control" check
boxes:
Comfort Panels
72
Operating a project
The following table shows the system key functions when operating an ongoing project:
Key or key
combination
Function
Acknowledges the currently displayed error alarm or all the alarms of an alarm
group as group acknowledgment.
A lit LED indicates unacknowledged fault alarms.
Calls up the configured infotext for an operating element.
When the LED is let, it indicates that an infotext is available.
Enables the operation of an operating element.
See also
Input of values (Page 158)
Entering and editing numeric values (Page 159)
Entering or changing alphanumeric values (Page 160)
4.3.5
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
73
Requirement
Cursor must be in the text box.
Procedure
Proceed as follows:
1. Press the respective key repeatedly until the desired character is selected in the preview.
The mapping of system keys to letters and numbers can be restricted within a given
context.
The desired character is applied in about one second or immediately after pressing a
different button.
2. To toggle between upper and a lower case, press <a/A>.
Result
The value is entered.
See also
Input of values (Page 158)
Entering and editing numeric values (Page 159)
Entering or changing alphanumeric values (Page 160)
Comfort Panels
74
4.3.6
Introduction
Use the screen keyboard to enter alphanumeric values. If you connect an external keyboard
to an HMI device with a touch screen, the screen keyboard is not displayed. You operate the
screen keyboard like a normal keyboard.
If you touch an operating element with a value, the screen keyboard opens automatically.
Depending on the operating element, either the alphanumeric or numerical screen keyboard
opens.
The appearance and the keyboard layout of the screen keyboard depend on the HMI device
used.
Depending on the configuration in the Control Panel, you can move the screen keyboard or
change its size.
Screen keyboard with numeric keypad for mounting in vertical format (Touch HMI devices only)
Screen keyboard with numerical keypad for mounting in horizontal format
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
75
Screen keyboard with numeric keypad for mounting in vertical format (Touch HMI devices only)
Screen keyboard with numerical keypad for mounting in horizontal format
Comfort Panels
76
Screen keyboard with numeric keypad for mounting in vertical format (Touch HMI devices only)
Screen keyboard with numerical keypad for mounting in horizontal format
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
77
Requirement
The screen keyboard is open.
Procedure
Proceed as follows:
1. Enter the desired value using the keys.
2. Display the available special characters if needed using <Alt Gr>.
4. To complete entry:
If you want apply the selected value, press "Return".
Result
The screen keyboard closes. Depending on the key used, the entered value is applied or
discarded.
See also
Input of values (Page 158)
Entering and editing numeric values (Page 159)
Entering or changing alphanumeric values (Page 160)
Comfort Panels
78
4.4
4.4.1
Overview of functions
The following table shows the settings in the Control Panel.
Icon
Function
Saving to external storage device (backup) (Page 131)
Restoring from external storage device (Page 133)
Importing and deleting certificates (Page 130)
Setting the date and time (Page 87)
Changing monitor settings (Page 91)
Configuring the screen keyboard (Page 80)
Changing general Internet settings (Page 126)
Setting the proxy server (Page 127)
Changing privacy settings (Page 128)
Setting the character repeat (Page 82)
Setting the double-click (Page 83)
Changing the network configuration (Page 119)
Changing the logon data (Page 123)
Backup registry information (Page 90)
Displaying information about the HMI device (Page 101)
Restarting the HMI device (Page 99)
Calibrating the touch screen (Page 83) 1
Activate memory management (Page 135)
Enabling the service concept (Page 62)
Changing password protection (Page 86)
Changing the printer properties (Page 96)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
79
Icon
Function
Enabling PROFINET services (Page 109)
Time server configuration (Page 111)
Changing regional settings (Page 89)
Setting the screen saver (Page 94)
Displaying system properties (Page 102)
Displaying memory distribution (Page 103)
Setting the device name of the HMI device (Page 118)
Configuring the data channel (Page 113)
Setting the delay time (Page 105)
Setting storage location (Page 104)
Changing MPI/PROFIBUS DP settings (Page 115)
Setting the uninterruptible power supply (Page 106)
State of uninterruptible power supply (Page 108)
Enabling sound and setting sound volume (Page 97)
Assigning sound to an event (Page 98)
Changing e-mail settings (Page 124) 2
Configuring Telnet for remote control (Page 125)
Additional tabs may appear in the "WinCC flexible Internet Settings" dialog. This depends on the
options that have been enabled for network operation in the project.
See also
Overview of network operation (Page 117)
4.4.2
4.4.2.1
Requirement
The Control Panel is open.
Comfort Panels
80
Procedure
Proceed as follows:
1. Open the "Siemens HMI Input Panel - Options" dialog with the "InputPanel". icon.
2. If you want to change the size of the screen keyboard, select the "Show Resize Button"
check box.
The next time you open the screen keyboard, the icon for changing the size of the screen
keyboard will appear.
3. Use "Open Input Panel" to open the screen keyboard.
4. If needed, toggle between the numerical and alphanumerical screen keyboard using
"<Num>".
Beginning with the 12" models, the numerical keypad is integrated in the screen
keyboard.
Result
The screen keyboard settings have been modified.
See also
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
81
4.4.2.2
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Keyboard Properties" dialog with the Keyboard icon.
2. If you want to enable character repetition, select the "Enable character repeat" check box.
3. Change the delay time under "Repeat delay" if needed.
4. Change the repetition rate under "Repeat rate" if needed.
5. Check the settings under "Tap here...":
If you use a touch HMI device, touch the test field.
The screen keyboard opens.
If you use a key HMI device, select the test field.
Press an alphanumeric key and keep the key pressed down.
Check the implementation of the character repetition and the rate of the character
repetition in the test field.
If necessary, correct the settings and repeat the test.
6. Confirm your entries with "OK".
Result
The character repetition and delay are set.
See also
Reference for functions (Page 79)
Comfort Panels
82
4.4.2.3
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Mouse Properties" dialog with the Mouse icon.
2. Click the pattern twice.
After the second click, the grid is shown in inverse colors. The white boxes change to
gray. The time before the second click is saved.
4. If the settings are not optimal, repeat the double-click on the sample.
5. Confirm your entry with "OK".
Result
The double-click adjustment is completed.
See also
Reference for functions (Page 79)
4.4.2.4
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
83
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the ""OP Properties" " dialog with the "OP". icon.
2. Open to the "Touch" tab.
4. 4" to 12" models: Briefly touch the center of the calibration crosshairs. The calibration
crosshairs appear at the next position.
15" to 22" models: Touch the center of the calibration crosshairs until they appear at the
next position.
Comfort Panels
84
Result
The touch screen of the HMI device is calibrated.
See also
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
85
4.4.3
Requirement
The Control Panel is open.
NOTICE
Password not available
If the password is no longer available, the following operator controls are no longer
enabled:
Control Panel
Taskbar
Windows CE Desktop
All data on the HMI device will be deleted when you update the operating system!
Therefore use the password to protect against loss.
Note
The following characters cannot be used in passwords:
Blank
Special characters * ? . % / \ ' "
Procedure
Proceed as follows:
1. Open the "Password Properties" dialog with the Password icon.
Comfort Panels
86
Result
The "secure mode" label is displayed on the Windows CE Desktop:
If you attempt to operate the Control Panel, taskbar or Windows CE Desktop, you are
prompted for a password. "SecureMode" is then switched off.
See also
Reference for functions (Page 79)
4.4.4
4.4.4.1
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
87
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Date/Time Properties" dialog with the "Date/Time Properties" icon.
2. Select the appropriate time zone for the HMI device under "Time Zone".
3. Confirm your entry with "Apply".
The time of day shown under "Current Time" is adjusted correspondingly to the selected
time zone.
4. Set the date in the calendar.
5. Set the current time of day under "Current Time".
6. Confirm your input by clicking on the "Apply" button.
The values you have set are now in effect.
7. To change between standard time and daylight savings time:
Select "Daylight savings time currently in effect" to switch from standard time to
daylight savings time.
Clear "Daylight savings time currently in effect" to switch from daylight savings time to
standard time.
Confirm your entry with "Apply".
The time is moved forward one hour (daylight savings time) or back one hour
(standard time).
8. Confirm your entries with "OK".
Result
The settings for the data and time of day have now been changed.
Alternative procedure
Alternatively, you can also switch between standard time and daylight savings time while the
project is running. To do this, configure the "SetDaylightSavingTime" system function on the
even of an operator control, for example, on a button.
Comfort Panels
88
See also
Reference for functions (Page 79)
Synchronizing the time via the time server (Page 111)
4.4.4.2
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Regional and Language Settings" dialog with the Regional Settings icon.
2. Open to the "Regional Settings" tab.
Result
The HMI device's regional settings have been changed.
See also
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
89
4.4.4.3
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "OP Properties" dialog with the OP icon.
2. Open to the "Persistant Storage" tab.
3. To back up registry entries to the internal memory of the HMI device, press "Save
Registry".
4. To back up files from the temporary section of the internal memory of the HMI device,
press "Save Files".
5. When a corrupted file system is to be restored automatically on the memory card, select
"Automatically repair file system errors ...".
Otherwise, a corrupted file system will only be restored when requested.
6. Confirm your entries with "OK".
Comfort Panels
90
Result
Registry entries and files from the temporary memory are saved in the internal memory of
the HMI device. The HMI device uses the saved registry entries the next time it starts. The
saved files are written back into the temporary memory.
The HMI device uses the saved registry information the next time it starts. The temporary
files are copied back.
See also
Reference for functions (Page 79)
4.4.4.4
Requirement
The Control Panel is open.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
91
Procedure
Proceed as follows:
1. Open the "Display Properties" dialog with the Display icon.
2. To change the color depth, open the "Settings" tab.
Comfort Panels
92
Result
The screen settings have been changed.
When you change the screen orientation, the setting only takes effect after you reboot the
HMI device. The configuration file on the HMI device is deleted. Transfer the project from the
configuring PC to the HMI device.
See also
Restarting the HMI device (Page 99)
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
93
4.4.4.5
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Screensaver" dialog with the ScreenSaver icon.
2. Enter the number of minutes before backlighting is to be reduced and the screen saver is
to be activated.
Value range in minutes: 5 to 71582. "0" disables the feature.
Comfort Panels
94
Result
The screen saver and the reduced backlighting for the HMI device is set.
The function associated to the key or button will not be executed when the brightness is set.
See also
Reference for functions (Page 79)
Changing monitor settings (Page 91)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
95
4.4.4.6
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Printer Properties" dialog with the Printer icon.
Result
The settings for the printer have now been changed.
See also
Reference for functions (Page 79)
Comfort Panels
96
4.4.4.7
Requirement
The Control Panel is open.
Note
If you deactivate the settings under "Enable sounds for", no more acoustic signals will be
emitted during inadvertent operations.
Procedure
Proceed as follows:
1. Open the "Volume & Sounds Properties" dialog with the Volume & Sounds icon.
2. Open to the "Volume" tab.
3. To output alarms of the HMI device with additional acoustics, select the desired option
under "Enable sounds for":
"Events": Warnings and system events
"Applications": Program-specific events
"Notifications": Notifications
4. Change the volume level of the alarms using "Loud" and "Soft" if needed.
5. To output operator feedback with additional acoustics, select the desired option under
"Enable clicks and taps for":
"Hardware buttons": Feedback when using keys
"Screen taps": Feedback when touch control
6. Use "Loud" and "Soft" to select between loud and quiet operator feedback.
7. Confirm your entries with "OK".
Result
The properties of the acoustic operation feedback are now set up.
See also
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
97
4.4.4.8
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Volume & Sounds Properties" dialog with the Volume & Sounds icon.
2. Open the "Sound" tab.
3. Under "Event", select the event to which you wish to assign a sound.
Events that already have a sound assigned are labeled with a speaker symbol.
4. Select the desired sound for the event under "Sound":
Select either a standard Windows sound or use "Browse" to select a "*.WAV" file from
the file system.
Test the sound with "Play" if needed.
Result
The sound is set for acoustic feedback on operations.
See also
Reference for functions (Page 79)
Comfort Panels
98
4.4.4.9
Required restart
The HMI device must be restarted in the following cases:
You have enabled or disabled PROFINET IO services.
You have changed the time zone setting.
You have changed the automatic daylight savings and standard setting
You have changed the color depth of the screen.
You have changed the orientation of the screen (Touch HMI devices only).
NOTICE
Data loss when the HMI device is restarted
All volatile data is lost when the HMI device is restarted.
Check the following:
The project on the HMI device is complete.
No data is being written to the internal memory.
Requirement
The Control Panel is open.
All applications and files are closed.
If you want to reset the HMI device to the factory settings: The HMI device is connected
to the configuring PC via Ethernet.
Procedure
1. Open the "OP Properties" dialog with the OP icon.
2. Open the "Device" tab.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
99
Result
The HMI device restarts.
If you select "Prepare for Reset", you can reset the HMI device to factory settings with
ProSave or WinCC. If you do not reset the HMI device to the factory settings, the HMI device
restarts after 10 minutes.
Further information on this can be found in the section "Updating the operating system of the
HMI device (Page 147)".
See also
Reference for functions (Page 79)
Comfort Panels
100
4.4.4.10
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "OP Properties" dialog with the OP icon.
2. Open the "Device" tab.
Comfort devices of 15" or more come with the second network adapter "PN_X3".
Result
The device-specific information is displayed in the dialog:
HMI device name
Version number of the installed operating system image
Version number and release date of the boot loader
Size of internal flash memory
Note
The size of internal flash memory is not equivalent to application memory available for a
project.
MAC address of the HMI device
See also
Restarting the HMI device (Page 99)
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
101
4.4.4.11
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the ""System Properties" " dialog with the "System". icon.
2. Open the "General" tab.
Result
The system properties are displayed.
See also
Reference for functions (Page 79)
Comfort Panels
102
4.4.4.12
Requirement
The Control Panel is open.
Procedure
1. Open the "System Properties" dialog with the System icon.
2. Open the "Memory" tab.
See also
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
103
4.4.5
Requirement
The Control Panel is open.
Procedure
1. Open the "Transfer Settings" dialog with the Transfer icon.
2. Open the "Directories" tab.
NOTICE
Settings under "Project File" and "Path"
The project may not open the next time the HMI device is started if changes are made in
the "Project File" and "Path" text boxes.
Do not change the entries in the "Project File" and "Path" text boxes.
3. Select a memory location under "Project Backup".
4. Confirm your entries with "OK".
The dialog closes.
Result
The storage location for the HMI device is now set.
See also
Reference for functions (Page 79)
Comfort Panels
104
4.4.6
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Transfer Settings" dialog with the Transfer icon.
2. Open the "Directories" tab.
NOTICE
Settings under "Project File" and "Path"
The project may not open the next time the HMI device is started if changes are made in
the "Project File" and "Path" text boxes.
Do not change the entries in the "Project File" and "Path" text boxes.
3.
Result
The delay time for the HMI device is now set.
See also
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
105
4.4.7
Requirement
The Control Panel is open.
The UPS is connected to the 24-V input and to the HMI device's USB port.
The "Uninterruptable Power Supply (UPS) with USB support" option is transferred to the
HMI device with ProSave.
Procedure
Proceed as follows:
1. Open the "UPS Properties" dialog with the UPS icon.
2. Open the "Configuration" tab.
Comfort Panels
106
Result
Port monitoring for the UPS is set.
See also
State of uninterruptible power supply (Page 108)
Reference for functions (Page 79)
Connecting the power supply (Page 44)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
107
4.4.8
Requirement
The Control Panel is open.
The UPS is connected to the 24-V input and to the HMI device's USB port.
The "Uninterruptible Power Supply (UPS) with USB support" option is transferred to the
HMI device with ProSave.
UPS settings are configured
Procedure
Proceed as follows:
1. Open the "UPS Properties" dialog with the UPS icon.
2. Open the "Current status" tab.
Result
The current monitoring state for the UPS is displayed.
See also
Setting the uninterruptible power supply (Page 106)
Reference for functions (Page 79)
Comfort Panels
108
4.4.9
Requirement
The Control Panel is open.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
109
Procedure
Proceed as follows:
1. Open the "PROFINET" dialog with the PROFINET icon.
Comfort devices of 15" or more come with the second network adapter "PN_X3".
2. To enable the PROFINET services, activate "PROFINET IO enabled".
NOTICE
Inconsistent device name
If the device name does not match the device name entered in the WinCC, the direct
keys will not work.
Use the device name from WinCC. The device name from WinCC is automatically
adopted during transfer.
This device name is not the same as that under Windows CE.
3. If required, enter the device name of the HMI device under "Device name".
4. Confirm your entries with "OK".
Result
The PROFINET services are enabled.
See also
Reference for functions (Page 79)
Comfort Panels
110
4.4.10
Introduction
To obtain the time of the HMI device from a time server, you can specify up to four different
time servers. The time is synchronized via the "Network Time Protocol" (NTP). You
additionally specify the synchronization cycle for the time. The synchronization cycle applies
to all configured time servers.
You can separately test the availability of each time server.
Requirement
The Control Panel is open.
HMI device and time servers are located in a network.
Procedure
Proceed as follows:
1. Open the "Profinet" dialog with the PROFINET IO icon.
2. Open the "NTP" tab.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
111
Result
The time servers are configured.
Comfort Panels
112
4.4.11
4.4.11.1
Requirement
The Control Panel is open.
WARNING
Unintentional transfer mode
Unintentional transfer mode could cause unintentional actions to be triggered in the plant.
Ensure that the configuring PC does not inadvertently switch the HMI device to transfer
mode when the project is open.
Note
If the HMI device is in "Transfer" mode while changes are made to the transfer settings, the
settings only go into effect after the transfer function is restarted.
This may occur if the Control Panel is opened to change the transfer properties in an active
project.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
113
Procedure
Proceed as follows:
1. Open the "Transfer Settings" dialog with the Transfer Settings icon.
2. Open the "Channel" tab.
3. To release the data channels of the HMI device, select "Enable Transfer".
4. To enable automatic transfer, select "Remote Control".
5. Configure at least one data channel:
Select the data channel.
Configure the data channel using "Properties...".
Note: The "USB device" data channel has no configurable properties.
6. Confirm your entries with "OK".
Result
The data channel is configured.
See also
Changing MPI/PROFIBUS DP settings (Page 115)
Changing the network configuration (Page 119)
Reference for functions (Page 79)
Comfort Panels
114
4.4.11.2
Introduction
The communication settings for MPI or PROFIBUS DP are defined in the project of the HMI
device.
In the following cases, the transfer settings might have to be changed:
The first time the project is transferred
If changes are made to the project but are only applied later
NOTICE
Transfer mode using MPI/PROFIBUS DP
The bus parameters are read from the project currently loaded on the HMI device.
The settings for MPI/PROFIBUS DP transfer can be modified. The following steps are
required:
Close the project.
Change the settings on the HMI device.
Then return to "Transfer" mode.
The changed MP/PROFIBUS DP settings will be overwritten in the following cases:
The project is started again
A project is transferred and started
Transfer settings
If the HMI device is in "Transfer" mode while changes are made to the transfer settings,
the settings only go into effect after the transfer function is restarted.
Requirement
The Transfer Settings dialog is open.
"MPI" or "PROFIBUS" is selected.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
115
Procedure
Proceed as follows:
1. Use "Properties" to open the "MPI" or "PROFIBUS" dialog.
2. If there are several masters connected on the bus, deactivate the "Panel is the only
master on the bus" check box.
3. Enter the bus address for the HMI device under "Address".
NOTICE
The bus address in the "Address" text box must be unique throughout the
MPI/PROFIBUS DP network.
4. Select the transfer speed under "Transmission Rate".
5. Enter the highest station address on the bus under "Highest Station Address" or "Highest
Station.
6. PROFIBUS only: Select the desired profile under "Profile".
Use "Bus Parameters" to view the profile data.
NOTICE
The bus parameters must be the same for all stations in the MPI/PROFIBUS DP
network.
7. Confirm your entries with "OK".
Result
The MPI/PROFIBUS DP settings of the HMI device have been changed.
See also
Configuring the data channel (Page 113)
Reference for functions (Page 79)
Comfort Panels
116
4.4.12
4.4.12.1
Introduction
You can connect the HMI device to a PROFINET network via the Ethernet port.
NOTICE
The HMI device only has client functionality in the PC network. This means that users can
access files of a node with TCP/IP server functionality from the HMI device via the network.
However, you cannot, for example, access files of the HMI device from a PC via the
network.
Note
Information on communication using SIMATIC S7 via PROFINET is provided in the online
help of WinCC.
The connection to a network offers, for example, the following options:
Printing via a network printer
Saving, exporting and importing of recipe data records on or from a server
Setting up of alarm and data archives
Transferring a project
Saving data
Addressing
Within a PROFINET network, computers are usually addressed using computer names.
These device names are translated from a DNS or WINS server to TCP/IP addresses. This
is why a DNS or WINS server is needed for addressing via computer names when the HMI
device is in a PROFINET network.
The corresponding servers are generally available in PROFINET networks.
Note
The use of TCP/IP addresses to address PCs is not supported by the operating system.
Consult your network administrator if you have questions in this regard
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
117
Preparation
Before beginning the configuration, request the following network parameters from your
network administrator.
Does the network use DHCP for dynamic assignment of network addresses?
If not, get a new TCP/IP network address for the HMI device.
Which TCP/IP address does the default gateway have?
If a DNS network is used, what are the addresses of the name server?
If a WINS network is used, what are the addresses of the name server?
See also
Reference for functions (Page 79)
4.4.12.2
Requirement
The Control Panel is open.
Comfort Panels
118
Procedure
Proceed as follows:
1. Open the "System Properties" dialog with the System icon.
2. Open the "Device Name" tab.
3. Enter the computer name of the HMI device under "Device name".
The computer name must be unique within the network.
4. If necessary, enter a description for the HMI device under "Device description".
5. Confirm your entries with "OK".
Result
The computer name for the HMI device is now set. The network functionality is enabled.
See also
Reference for functions (Page 79)
4.4.12.3
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
119
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the network adapter display with the "Network&Dial-Up Connections" icon. The
image below shows the network adapter of a KP1500 Comfort.
Comfort devices of 15" or more come with the second network adapter "PN_X3".
The interface for the HMI devices KP400 Comfort and KTP400 Comfort is called "FEC".
2. Open the "PN_X1" entry.
The "'PN_X1' Settings" dialog box opens.
3. Open the "IP Address" tab.
Comfort Panels
120
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
121
The KP400 Comfort and KTP400 Comfort HMI devices only have one Ethernet port
("Port1").
9. If needed, select the transmission mode and speed for the Ethernet port of the HMI
device.
10.Change the limits for the Ethernet ports "Port 1" and "Port 2" if needed.
11.Confirm your entries with "OK".
Result
The LAN connection parameters for the HMI device have been changed.
See also
Configuring the data channel (Page 113)
Reference for functions (Page 79)
Comfort Panels
122
4.4.12.4
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Network ID" dialog with the Network ID icon.
Result
The logon information has now been set.
See also
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
123
4.4.12.5
Requirement
The Control Panel is open.
Note
Additional tabs may appear in the "WinCC Internet Settings" dialog. This depends on the
options that have been enabled for network operation in the project. For more information,
please refer to the WinCC or WinCC flexible Online Help.
Procedure
Proceed as follows:
1. Open the "WinCC Internet Settings" dialog with the icon of the same name.
2. Open the "Email" tab.
Comfort Panels
124
Result
The e-mail settings have been changed.
See also
Reference for functions (Page 79)
4.4.12.6
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "WinCC Internet Settings" dialog with the icon of the same name.
2. Open the "Telnet" tab.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
125
Result
The Telnet service is now enabled on the HMI device. You can remotely control the HMI
device via Telnet without restrictions.
See also
Reference for functions (Page 79)
4.4.13
4.4.13.1
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Internet Options" dialog with the Internet Options icon.
2. Open the "General" tab.
3. Enter the homepage for the Internet browser under "Start Page".
4. Enter the address of the search engine under "Search Page".
Note
Do not change the settings in the "User Agent" field.
5. Enter the desired cache memory size under "Cache Size".
Comfort Panels
126
Result
The general parameters for the Internet browser have been set.
See also
Reference for functions (Page 79)
4.4.13.2
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Internet Options" dialog with the Internet Options icon.
2. Open the "Connection" tab.
127
Result
The proxy server is configured.
See also
Reference for functions (Page 79)
4.4.13.3
Requirement
The Control Panel is open.
Comfort Panels
128
Procedure
Proceed as follows:
1. Open the "Internet Options" dialog with the "Internet Options" icon.
2. Open the "Privacy" tab.
Result
The logon information has now been set.
See also
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
129
4.4.13.4
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "Certificates" dialog with the Certificates icon.
Comfort Panels
130
Result
The changes to the certificates have been performed.
See also
Reference for functions (Page 79)
4.4.14
Introduction
You can backup the operating system, applications and data from the internal memory of the
HMI device to an external storage medium.
The following external storage media can be used:
Memory card
USB storage medium, e.g. USB stick
Requirement
External storage medium with sufficient free capacity is inserted in the HMI device.
External storage medium is formatted.
The Control Panel is open.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
131
Procedure
Proceed as follows:
1. Open the ""Backup/Restore"" dialog with the "Backup/Restore" icon.
The backup files on the external storage media are shown in the list.
4. Select a blank entry and start the backup process using "Backup".
The external storage medium is tested. The progress of the back process is then
displayed under "Current Step". The end of the backup process is displayed with the
alarm " The operation completed successfully".
5. Acknowledge this alarm.
The dialog closes.
Result
The data from the HMI device is saved in a backup file on the external storage medium.
See also
Reference for functions (Page 79)
Comfort Panels
132
4.4.15
Introduction
A restore operation deletes the internal memory of the HMI device upon confirmation. The
content of the backup file is then copied from the external storage medium into the internal
memory of the HMI device. The HMI device is then restarted.
The following external storage media can be used:
Memory card
USB storage medium, for example USB stick
Requirement
The external memory with the backup file is inserted in the HMI device.
The Control Panel is open.
NOTICE
Loss of data possible
All data on the HMI device will be deleted during a restore operation. License keys are
deleted after counter-inquiry.
Back up the HMI device's data before restoring if required.
Procedure
Proceed as follows:
1. Open the "Backup/Restore" dialog with the Backup/Restore icon.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
133
The backup files on the selected storage medium are shown in the list.
4. Select a backup file and start the restore process using the "Restore" button.
The content of the backup file is checked. After a successful test, the alarm is displayed
stating that the data from the internal memory have been deleted.
5. Acknowledge this alarm.
The internal memory is deleted. The content of the backup file is then copied into the
internal memory. A progress bar shows the status of the restore process. After successful
restoration, you are prompted to remove the external storage medium and restart the HMI
device.
6. Remove the external memory.
7. Acknowledge this alarm.
The HMI device starts.
Result
The data from the backup file are restored in internal memory of the HMI device.
Note
Calibrating the touch screen
After the restore, you may have to recalibrate the touch screen.
See also
Reference for functions (Page 79)
Comfort Panels
134
4.4.16
Requirement
The Control Panel is open.
Procedure
Proceed as follows:
1. Open the "OP Properties" dialog with the OP icon.
2. Open the "Memory Monitoring" tab.
3. If you want to enable memory management, select "Shut down HMI Runtime...".
4. Confirm the entry with "OK".
Result
Memory management is activated. An open project is closed in these circumstances:
Insufficient RAM
RAM needs to be reorganized
An alarm is then triggered on the HMI device. Restart the project on the HMI device.
See also
Reference for functions (Page 79)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
135
Comfort Panels
136
Commissioning a project
Commissioning a project
5.1
Overview
Configuration phase
A project the process image of the working process is produced during configuration to
visualize automated working processes. The process displays for the project contain
displays for values and alarms which provide information about process statuses. The
process control phase follows the configuration phase.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
137
Commissioning a project
5.2 Operating modes
5.2
Operating modes
Operating modes
The HMI device may be in the following operating modes:
Offline
Online
Transfer
"Transfer" mode
In this mode, you can transfer a project from the configuring PC to the HMI device or backup
and restore HMI device data, for example.
The following options are available for setting "Transfer" mode on the HMI device:
When the HMI device starts up
Start "Transfer" mode manually in the HMI device Loader.
During ongoing operation
Start the "Transfer" mode manually within the project using an operating element. The
HMI device toggles to "Transfer" mode when automatic mode is set and a transfer is
initiated on the configuring PC.
5.3
Comfort Panels
138
Commissioning a project
5.4 Data transmission options
5.4
Overview
The following table shows the options for data transfer between an HMI device and the
configuring PC.
Type
Data channel
Backup
MPI/PROFIBUS DP
Yes
USB
Yes
PROFINET
Restoring
Ethernet
Yes
Yes
USB
Yes
MPI/PROFIBUS DP
Yes
USB
Yes
1
Yes
Yes
Ethernet
Yes
MPI/PROFIBUS DP
Yes
USB
Yes
1
Yes
Ethernet
Yes
MPI/PROFIBUS DP
Yes
USB
Yes
PROFINET 1
Yes
Ethernet
Yes
MPI/PROFIBUS DP
Yes
USB
Yes
PROFINET
Ethernet
1
Yes
Yes
PROFINET
Installing or removing an add-on
Ethernet
PROFINET
Transferring a project
Yes
MPI/PROFIBUS DP
PROFINET
HMI device
Yes
Yes
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
139
Commissioning a project
5.5 Transfer
5.5
Transfer
5.5.1
Introduction
You can start the "Transfer" mode manually or automatically on the HMI device.
If the automatic transfer is enabled, the HMI device automatically switches to "Transfer"
mode when the following event occurs during runtime: You start project transfer on the
connected configuring PC.
Note
With automatic transfer, the HMI device only switches to "Transfer" mode when the project is
running on the HMI device.
Automatic transfer is particularly suited for the test phase of a new project since transfer is
completed without interfering with the HMI device.
NOTICE
If automatic transfer is activated on the HMI device and a transfer is initiated on the
configuring PC, the project currently running is automatically stopped. The HMI device then
automatically switches to "Transfer" mode.
After the commissioning phase, deactivate the automatic transfer so that the HMI device
cannot be inadvertently switched to transfer mode. The transfer mode can trigger
unintentional reactions in the plant.
You can issue a password in the Control Panel to restrict access to the transfer settings
and thus avoid unauthorized modifications.
Requirement
The Control Panel is open.
The Runtime software is terminated.
Comfort Panels
140
Commissioning a project
5.5 Transfer
Procedure
Proceed as follows:
1. Open the "Transfer Settings" dialog with the Transfer Settings icon.
2. Open the "Channel" tab.
Result
"Transfer" mode is set. The project is transferred from the configuration PC via the data
channel selected on the HMI device. If required, configure the corresponding data channel
on the configuration PC.
Transferred data is written directly to internal memory of the HMI device.
Alternative procedure
Alternatively, you can also set "Transfer" mode on the HMI device using an operating
element in the project. To do this, configure the "SetDeviceMode" system function on an
operating element event, for example, on a button.
You can find more information on this topic in the online help of WinCC.
See also
Configuring the data channel (Page 113)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
141
Commissioning a project
5.5 Transfer
5.5.2
Start transfer
Introduction
To make a project executable on an HMI device, transfer the project from the configuring PC
to the HMI device. With a transfer, you particularly specify whether to overwrite existing data
on the HMI device such as the "User management" or "Recipe data".
Requirement
The project is opened in WinCC on the configuration PC.
Project tree is displayed.
Configuring PC is connected to the HMI device.
Transfer mode is set on the HMI device.
Procedure
Proceed as follows:
1. Select the "Download to device > Software" command in shortcut menu of the HMI
device.
2. When the "Extended download to device" dialog opens, configure the "Transfer settings".
Ensure here that the "Transfer settings" match the "Transfer settings on the HMI device":
Select the protocol used, for example, Ethernet or USB.
If you are using Ethernet or PROFINET, you can also configure the network address
in the "Devices & Networks" editor in WinCC. You can find more information on this
topic in the online help of WinCC.
Configure the appropriate interface parameters on the configuring PC.
Make the specific interface or protocol settings on the HMI device as required.
Click "Download".
You can open the "Extended download to device" dialog at any time using the menu
command "Online > Extended download to device".
The "Load preview" dialog opens. The project is compiled at the same time. The result
appears in the "Load preview" dialog.
3. Check the displayed default settings and change them if necessary.
4. Click "Download".
Result
The project is transferred to the selected HMI device. If errors or warnings occur during the
transfer, appropriate alarms are displayed in the Inspector window under "Info> Download".
When the transfer is completed successfully, the project is executable on the HMI device.
Comfort Panels
142
Commissioning a project
5.5 Transfer
5.5.3
Testing a project
Introduction
There are two options to test a project:
Test the project on the configuring PC
You can test a project at a configuring PC, using a simulator. You can find more detailed
information on this in the online help of WinCC.
Offline testing of the project on the HMI device
Offline testing means that communication between the HMI device and PLC is down
while the test is being carried out.
Online testing of the project on the HMI device
Online testing means that the HMI device and PLC communicate with each other during
testing.
Perform the tests, starting with the "Offline test", followed by the "Online test".
Note
You should always test the project on the HMI device on which the project will be used.
Check the following:
1. Check the correct layout of the screens
2. Check the screen navigation
3. Check the input objects
4. Enter the tag values
The test increases the certainty that the project will run error-free on the HMI device.
Procedure
In "Offline" mode, you can test individual project functions on the HMI device without them
being affected by the PLC. PLC tags, therefore, are not updated.
Test the operating elements and visualization of the project as far as possible without
connecting to the PLC.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
143
Commissioning a project
5.6 Backup and restore
Procedure
In "Online" mode, you can test individual project functions on the HMI device without them
being affected by the PLC. PLC tags are updated in this case.
You have the option to test all communication-dependent functions, for example alarms, etc.
Test the operating elements and views of the project.
5.6
5.6.1
Overview
General information
NOTICE
Power failure
If a complete restore operation is interrupted due to power failure on the HMI device, the
operating system of the HMI device may be deleted. In this case, you have to reset the HMI
device to its factory settings. The HMI device automatically switches to "bootstrapping"
mode.
Compatibility conflict
If a alarm is output on the HMI device warning of a compatibility conflict during the restore
operation, the operating system must be updated.
See also
Saving to external storage device (backup) (Page 131)
Comfort Panels
144
Commissioning a project
5.6 Backup and restore
5.6.2
Requirement
The HMI device is connected to the configuring PC.
The HMI device is selected in the project tree.
If a server is used for data backup: The configuring PC has access to the server.
Backup / Restore via the "Backup/Restore" dialog in the Control Panel of the HMI device
The "Backup / Restore" function is approved for MMC and SD memory cards, as well as
USB mass storage devices.
See also
Saving to external storage device (backup) (Page 131)
Restoring from external storage device (Page 133)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
145
Commissioning a project
5.7 Updating the operating system
5.7
5.7.1
Introduction
If the operating system version of an HMI device is not compatible with the configuration, you
need to update the operating system of the HMI device. Depending on the protocol used, the
operating system on the HMI device is updated automatically upon prompting when the
project is loaded. Thereafter, the loading continues. Otherwise, the loading of the project is
canceled. In this case, you have to start the update of the operating system manually.
Comfort Panels
146
Commissioning a project
5.7 Updating the operating system
5.7.2
Requirement
The HMI device is connected to the configuring PC.
The PG/PC interface is set
The HMI device is selected in the project tree.
The HMI device is switched on.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
147
Commissioning a project
5.7 Updating the operating system
Result
The operating system of the HMI device is now operational and updated to the latest version.
Comfort Panels
148
Commissioning a project
5.8 Managing add-ons and license keys
5.8
5.8.1
Managing add-ons
Introduction
You can install the following add-ons on an HMI device:
Add-ons supplied with WinCC
Add-ons purchased separately from WinCC
The HMI device type determines which add-ons can be installed.
For an overview of available add-ons, refer to "Introduction to WinCC".
Requirement
The HMI device is connected to the configuring PC.
The PG/PC interface is set
The HMI device is selected in the project tree.
The HMI device is switched on.
Procedure
To install an add-on on the HMI device, follow these steps:
1. Select the "Options" command in the "Online > HMI device maintenance" menu.
All available add-ons and those already installed are shown.
2. You may also click "Device status" to display the add-ons installed on the HMI device.
3. To install an add-on on the HMI device, select the add-on and use ">>" to transfer it to the
list of installed add-ons.
4. Click "<<" to remove an add-on from the HMI device.
5. To start the installation or removal, click "OK".
Result
The selected add-ons have been installed on the HMI device or removed from the HMI
device.
See also
Transferring license keys (Page 150)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
149
Commissioning a project
5.8 Managing add-ons and license keys
5.8.2
Introduction
You need a license key for WinCC Runtime add-ons to use them on an HMI device. The
required licenses are usually supplied as license keys on a data medium, for example, a
USB stick. You can also obtain the license keys from a license server.
Use the "Automation License Manager" to transfer the license keys to or from an HMI
device. The "Automation License Manager" is installed automatically with WinCC.
CAUTION
Backing up license keys
To prevent the deletion of the license keys, you need to back them up in the following
situation:
Prior to restoring a complete database from the backup copy
See also
Managing add-ons (Page 149)
5.8.3
Requirement
The HMI device is connected to the configuring PC or to the PC with the "Automation
License Manager".
If you use the configuring PC: The HMI device is selected in the project tree.
Procedure
To transfer the license keys, follow these steps:
1. Open the "Automation License Manager". On a PC without a WinCC installation, open the
"Automation License Manager" from the Windows Start menu.
The "Automation License Manager" starts.
2. Select the "Connect HMI device" command in the "Edit > Connect Target System" menu.
The "Connect target system" dialog opens.
3. Select the "device type" of your HMI device.
4. Select the "connection".
Comfort Panels
150
Commissioning a project
5.8 Managing add-ons and license keys
5. Configure the corresponding "connection parameters", depending on the selected
connection.
6. Click "OK".
The connection to the HMI device is established. The connected HMI device is displayed
in the left area of the "Automation License Manager".
7. Transfer the license keys to the HMI device:
In the left area, select the drive on which the license keys are located.
The license keys are shown in the right area.
Select the license keys
Drag-and-drop the license keys to the HMI device.
You can also remove license keys from the HMI device by means of drag-and-drop.
Alternative procedure
On a PC with a WinCC installation, you can also launch the "Automation License Manager"
from WinCC: Select the "Authorize/License" command in the "Online > HMI device
maintenance" menu.
Result
The license keys are transferred to the HMI device.
To back up the license keys on the HMI device, drag them from the HMI device to an
available drive.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
151
Commissioning a project
5.8 Managing add-ons and license keys
Comfort Panels
152
Operating a project
6.1
Overview
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
153
Operating a project
6.1 Overview
Unintentional actions
CAUTION
Do not carry out several operations simultaneously. You may otherwise trigger
unintentional actions.
With touch control:
Always touch only one operating element on the screen
With key control:
Do not press more than two function keys simultaneously.
Exception: The keyboard shortcut <CTRL+ALT+DEL> can also be used with the system
keys. Note that the "Lock Task Switching" option can be activated in the project in the
Runtime settings of the HMI device.
Comfort Panels
154
Operating a project
6.1 Overview
The type of optical feedback depends on the operating element:
Buttons
The HMI device generates different views for the "Pressed" and "Unpressed" states,
provided the configuration engineer has configured a 3D effect:
"Pressed" state:
"Unpressed" state:
The configuration engineer determines the appearance of a selected field, for example,
line width and color for the focus.
Invisible buttons
By default, invisible buttons are not displayed as pressed when they are touched. No
optical operation feedback is provided in this case.
The configuration engineer may, however, configure invisible buttons so that their outline
appears as lines when touched. This outline remains visible until you enable another
operating element.
I/O fields
When you select an I/O field, the content of the I/O field is displayed against a colored
background. With touch operation, a screen keyboard opens for the entering of values.
Acoustic feedback from operating elements
An acoustic signal is generated as soon as the HMI device detects that the touch screen has
been touched or a key has been pressed, . You can activate or deactivate this acoustic
operation feedback.
Note
The acoustic feedback is only possible if you interact with the project directly on the touch
screen or press one of the keys of the HMI device. If you use an external mouse or keyboard
for interaction, no acoustic signal is issued.
Acoustic feedback does not mean that the action has been performed.
Acoustic signal for inadvertent operations
If you try to enter an invalid character, the HMI device issues an acoustic signal in
accordance with the setting.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
155
Operating a project
6.2 Function keys
6.2
Function keys
Function keys
Function key assignment is defined during configuration. The configuration engineer can
assign function keys globally and locally.
Function keys are available only on key HMI devices.
6.3
Direct keys
Introduction
Direct keys on the HMI device are used to set bits in the I/O area of a SIMATIC S7.
Direct keys enable operations with short reaction times that are, for example, a jog mode
requirement.
NOTICE
Direct keys are still active when the HMI device is in "offline" mode.
NOTICE
If you operate a function key with direct key functionality in a running project, the direct key
function is always executed, independent of the current screen contents.
Note
You can only use direct keys when there is a connection via PROFIBUS DP or
PROFINET IO.
Direct keys result in additional basic load on the HMI device.
Comfort Panels
156
Operating a project
6.4 Setting the project language
Direct keys
The following objects can be configured as a direct key:
Buttons
Function keys
You can also define image numbers in the case of HMI devices with touch operation. In this
way, the configuration engineer can configure the direct keys on an image-specific basis.
You can find detailed information on configuring direct keys in the online help for WinCC
under "Visualizing processes > Communicating with controllers".
6.4
Introduction
The HMI device supports multilingual projects. You must have configured a corresponding
operating element which lets you change the language setting on the HMI device during
runtime.
The project always starts with the language set in the previous session.
Requirements
The required language for the project must be available on the HMI device.
The language switching function must be logically linked to a configured operating
element such as a button.
Selecting a language
You can change project languages at any time. Language-specific objects are immediately
output to the screen in the new language when you switch languages.
The following options are available for switching the language:
A configured operating element switches from one language to the next in a list
A configured operating element directly sets the desired language
Further information on this may be available in your plant documentation
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
157
Operating a project
6.5 Input of values
6.5
Input of values
If you select an I/O field in the project using the tab sequence or by touch, the entire field
content is selected. The screen keyboard appears on a touch HMI device.
Procedure
Proceed as follows:
1. To overwrite the value:
Enter the new value using the system keys or the screen keyboard.
2. To change the value:
Key HMI device: Deselect the content with <SHIFT+Right>.
Touch HMI device: Deselect the content with any cursor key.
Move the cursor to the desired location and change the value.
3. Close the value entry.
Result
The value of the I/O field is set.
See also
Entering and editing numeric values (Page 159)
Entering or changing alphanumeric values (Page 160)
Entering values with system keys (Page 73)
Using the screen keyboard (Page 75)
Reference for system keys (Page 69)
Comfort Panels
158
Operating a project
6.6 Entering and editing numeric values
6.6
Introduction
You enter numeric values depending on a type of HMI device, either with the system keys or
the screen keyboard. Alternatively, you can also connect an external keyboard.
Note
When the screen keyboard is open, PLC job 51, "Select screen" has no function.
With key HMI devices, only the numbers on the system keys are available.
With touch HMI devices, a numerical screen keyboard opens.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
159
Operating a project
6.7 Entering or changing alphanumeric values
Requirement
Cursor is in an I/O field.
Procedure
Proceed as follows:
1. Enter the desired value using the system keys or the screen keyboard.
2. Discard the entry with <ESC>, if necessary.
3. Conclude your entry with <ENTER>.
Result
The numeric value has been changed. If you have discarded the entry, the I/O field remains
empty or the original value is displayed.
See also
Input of values (Page 158)
Entering values with system keys (Page 73)
Using the screen keyboard (Page 75)
Reference for system keys (Page 69)
6.7
Introduction
Depending on the type of HMI device, you enter alphanumeric values either with the system
keys or the screen keyboard. Alternatively, you can also connect an external keyboard.
Note
When the screen keyboard is open, PLC job 51, "Select screen" has no function.
With key HMI devices, all characters on the system keys are available.
With touch HMI devices, an alphanumeric screen keyboard opens.
Note
The screen keyboard display is independent of the configured project language.
Comfort Panels
160
Operating a project
6.7 Entering or changing alphanumeric values
Requirement
Cursor is in an I/O field.
Procedure
Proceed as follows:
1. Enter the desired value using the system keys or the screen keyboard.
2. Discard the entry with <ESC>, if necessary.
3. Conclude your entry with <ENTER>.
Result
The alphanumeric value has been entered or changed. If you have discarded the entry, the
I/O field remains empty or the original value is displayed.
See also
Input of values (Page 158)
Entering values with system keys (Page 73)
Using the screen keyboard (Page 75)
Reference for system keys (Page 69)
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
161
Operating a project
6.8 Displaying infotext
6.8
Displaying infotext
Purpose
The configuration engineer uses infotext to provide additional information and operating
instructions. The configuration engineer can configure infotext on screens and operating
elements.
The infotext of an I/O field may contain, for example, information on the value to be entered.
Comfort Panels
162
Operating a project
6.9 Closing the project
Requirement
Operating element with the configured infotext is selected.
Procedure
Proceed as follows:
1. Press the <HELP> key.
The infotext for the operating element is displayed.
2. Use the cursor keys to scroll as needed.
Note
Switching between displayed infotext
The configuration engineer can configure infotext for an I/O field and the associated
screen. You can switch between two infotexts by touching the infotext window.
3. Close the window with the infotext.
Alternative procedure
Depending on your configuration, infotext can also be called via a configured operating
element.
Refer to your plant documentation to find any additional information on this topic.
6.9
Procedure
Proceed as follows:
1. Use the corresponding operating element object to close the project.
Wait for the Loader to open after you closed the project.
2. Switch off power to the HMI device.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
163
Operating a project
6.9 Closing the project
Comfort Panels
164
Maintaining and caring for the touch screen and keyboard overlay
Introduction
The HMI device is designed for maintenance-free operation. The touch screen and keyboard
overlay should nevertheless be cleaned regularly.
Requirement
Damp cleaning cloth
Washing up liquid or foaming screen cleaning agent
Procedure
NOTICE
Unintentional response
If you clean the touch screen or an HMI device with a keyboard overlay when it is switched
on, you may cause maloperations.
Switch off the HMI device or, during ongoing operation, clean the touch screen only when it
is in a locked state. Note that the touch screen lock automatically ends after 15 seconds.
Damage caused by unauthorized cleaning products
Using compressed air or steam cleaners, or aggressive solutions or scouring agents will
damage the HMI device.
Do not clean the HMI device with compressed air or steam jet blowers. Do not use
aggressive solvents or scouring powder.
Proceed as follows:
1. Switch off the HMI device or lock the touch screen.
2. Spray the cleaning solution onto a cleaning cloth.
Do not spray directly onto the HMI device.
3. Clean the HMI device.
When cleaning the display wipe from the screen edge inwards.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
165
7.2
Comfort Panels
166
7.3
Repairs
In case of repair, the HMI device must be shipped to the Return Center in Frth. Repairs
may only be carried out at the Return Center in Frth.
Depending on the work necessary to repair the device, the Center may decide to give you a
credit note. A credit note is only granted when the sender orders a new HMI device.
The address is:
Siemens AG
Industry Sector
Returns Center
Siemensstr. 2
90766 Frth
Germany
Spare parts
You can find spare parts and accessories for the HMI devices in the section Accessories
(Page 21).
7.4
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
167
Comfort Panels
168
Technical specifications
8.1
Approvals
CAUTION
The following overview shows possible approvals.
The HMI device itself is certified as shown on the rear panel labels.
CE approval
The HMI device meets the general and safety-related requirements of the EMC Directive
(2004/108/EC "Electromagnetic Compatibility") and conforms to the harmonized European
standards (EN) for programmable logic controllers published in the official gazettes of the
European Union:
94/9/EU "Devices and protection systems for use as prescribed in potentially explosive
areas" (Guidelines for Explosion Protection)
EC Declaration of Conformity
The EC Declarations of Conformity are available to the relevant authorities at the following
address:
Siemens Aktiengesellschaft
Industry Sector
I IA AS FA WF AMB
PO Box 1963
D-92209 Amberg, Germany
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
169
Technical Support
UL approval
Underwriters Laboratories Inc., to
UL 508 (Industrial Control Equipment)
CSA C22.2 No. 142 (Process Control Equipment)
or
Underwriters Laboratories Inc., to
UL 508 (Industrial Control Equipment)
CSA C22.2 No. 142 (Process Control Equipment)
UL 1604 (Hazardous Location)
CSA-213 (Hazardous Location)
Approved for use in
Class I, Division 2, Group A, B, C, D or
Class I, Zone 2, Group IIC or
non-hazardous locations
FM Approval
FM
APPROVED
Comfort Panels
170
Technical Support
Ex approval
The following approvals apply to the HMI device in accordance with
EN 60079-0:2009
EN 60079-15:2005
EN 60079-31:2009
valid:
II 3 G
Ex nA IIC Tx Gc
II 3 D
Ex tc IIIC T 70 C Dc IP65
x: Temperature values, see EC design examination certificate
Test number
Siemens AG
Comfort Panel
DEKRA11ATEX0005X
Industry Sector
Werner-von-Siemens-Strae 50
D-92209 Amberg, Germany
IEC 61131
The HMI device fulfills requirements and criteria to IEC 61131-2, Programmable Logic
Controllers, Part 2: Operating resource requirements and tests.
See also
Currently valid certificates on the Internet
(http://support.automation.siemens.com/WW/view/en/47182890/134200)
KOREA
This product meets the requirements of Korean certification.
This product satisfies the requirement of the Korean Certification (KC Mark).
(A)
.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
171
Technical Support
8.2
8.2.1
Electromagnetic compatibility
Introduction
The HMI device fulfills, among other things, the requirements of the EMC law pertaining to
the domestic European market.
Pulse-shaped disturbance
The following table shows the electromagnetic compatibility of modules with regard to pulseshaped interference. The precondition for electromagnetic compatibility is that the HMI
device meets the specifications and guidelines for electrical installation.
Pulse-shaped interference
Tested with
Degree of
severity
Electrostatic discharge in
accordance with
IEC 61000-4-2
Air discharge: 8 KV
Asymmetrical coupling:
Contact discharge: 6 kV
3
2 KV supply line
DC voltage with protective elements
1 KV supply line
DC voltage with protective elements
External protective circuit required; please refer to the S7-300 automation system installation
manual, Installation, "Lightning and overvoltage protection" section
Comfort Panels
172
Technical Support
Sinusoidal interference
The following table shows the EMC behavior of the modules with respect to sinusoidal
interference. This requires the HMI device to meet the specifications and directives for
electrical installation.
Sinusoidal interference
Test values
HF radiation (in
electromagnetic fields) in
accordance with
IEC 61000-4-3
RF interference current on
cables and cable shielding
conforming to IEC 61000-4-6
Degree of
severity
Additional measures
If you want to connect an HMI device to the public power supply system, you must ensure
Limit Value Class B in accordance with EN 55022.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
173
Technical Support
8.2.2
ESD guideline
Comfort Panels
174
Technical Support
Charge
Every person without a conductive connection to the electrical potential of his/her
surroundings can be electrostatically charged.
9ROWDJH
The material with which this person comes into contact is of particular significance. The
figure shows the maximum electrostatic voltages with which a person is charged, depending
on humidity and material. These values conform to the specifications of IEC 61000-4-2.
>N9@
>@
5HODWLYHKXPLGLW\
Synthetic materials
Wool
Antistatic materials such as wood or concrete
CAUTION
Grounding measures
There is no equipotential bonding without grounding. An electrostatic charge is not
discharged and may damage the ESD.
Protect yourself against discharge of static electricity. When working with electrostatic
sensitive devices, make sure that the person and the workplace are properly grounded.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
175
Technical Support
Comfort Panels
176
Technical Support
Dimension drawings
8.3.1
8.3
$OOGLPHQVLRQVLQPP
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
177
Technical Support
8.3.2
$OOGLPHQVLRQVLQPP
Comfort Panels
178
Technical Support
8.3.3
$OOGLPHQVLRQVLQPP
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
179
Technical Support
8.3.4
$OOGLPHQVLRQVLQPP
Comfort Panels
180
Technical Support
8.3.5
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
181
Technical Support
8.3.6
$OOGLPHQVLRQVLQPP
Comfort Panels
182
Technical Support
8.3.7
$OOGLPHQVLRQVLQPP
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
183
Technical Support
8.3.8
$OOGLPHQVLRQVLQPP
Comfort Panels
184
Technical Support
8.3.9
$OOGLPHQVLRQVLQPP
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
185
Technical Support
8.3.10
Comfort Panels
186
Technical Support
8.3.11
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
187
Technical Support
8.3.12
Comfort Panels
188
Technical Support
8.3.13
5
5
5
5
5
5
5
5
5
5
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
189
Technical Support
5
5
5
5
/DEHOLQJVWULSVDQGIRUNH\V)))DQG)))
5
5
/DEHOLQJVWULSIRUNH\V))
5
5
/DEHOLQJVWULSIRUNH\V))
5
5
/DEHOLQJVWULSIRUNH\V))
5
5
/DEHOLQJVWULSIRUNH\V))
5
Comfort Panels
190
Technical Support
8.4
Technical specifications
8.4.1
Weight
HMI devices
KP400 C
omfort
Weight without packaging
KTP400
Comfort
KP700
Comfort
TP700
Comfort
KP900
Comfort
TP900
Comfort
KP1200
Comfort
TP1200
Comfort
0.6 kg
2.2 kg
1.4 kg
2.7 kg
1.9 kg
4.4 kg
2.8 kg
TP900
Comfort
KP1200
Comfort
TP1200
Comfort
0.8 kg
Display
HMI devices
KP400 C
omfort
KTP400
Comfort
Type
TP700
Comfort
KP900
Comfort
KP700
Comfort
4,3''
7,0''
95 mm x 53 mm
152 mm x 91 mm
9,0''
12,1''
195 mm x 117 mm
261 mm x 163 mm
Possible colors
Up to 16 million
Brightness control
Backlighting
80000 h
II
MTBF: Operating hours after which the maximum brightness is reduced by half compared to the original value. MTBF is
increased by using the integrated dimming function, for example time-controlled via screen saver or centrally via
PROFIenergy.
Input device
HMI devices
KP400 C
omfort
KTP400
Comfort
KP700
Comfort
TP700
Comfort
KP900
Comfort
TP900
Comfort
KP1200
Comfort
TP1200
Comfort
Keyboard (numeric/alpha
entry)
Yes
Yes
Yes
No
Yes
No
Yes
No
No
Yes
No
Yes
No
Yes
No
Yes
Function keys
24
No
26
No
34
No
Labeling strips
Yes
Yes
Yes
No
Yes
No
Yes
No
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
191
Technical Support
Memory
HMI devices
KP400 C
omfort
Usable memory for
application data
Usable memory for recipe
data 1
Additional memory for
options
KTP400
Comfort
KP700
Comfort
KP900
Comfort
TP900
Comfort
4 MB
12 MB
512 KB
2 MB
4 MB
12 MB
Memory card
1
TP700
Comfort
KP1200
Comfort
TP1200
Comfort
KP1200
Comfort
TP1200
Comfort
KP1200
Comfort
TP1200
Comfort
Interfaces
HMI devices
KP400 C
omfort
KTP400
Comfort
1 x RS 422/485 (PROFIBUS)
Ethernet (PROFINET)
TP700
Comfort
KP900
Comfort
TP900
Comfort
Audio
USB 2.0
KP700
Comfort
1 x Host 2)
1 x Device
2 x Host 2
1 x Device 3
3)
USB type A, maximum load 500 mA, equivalent to USB standard 2.0
Power supply
HMI devices
KP400 C
omfort
KTP400
Comfort
KP700
Comfort
TP700
Comfort
Rated voltage
TP900
Comfort
24 V DC
KP900
Comfort
+19.2 V to +28.8 V
0.13 A
0.5 A
I2 t
Power
Maximum permissible
transient
Minimum time between two
transients
Internal protection
0.5
3.1 W
0.75 A
0.85 A
18 W
20 W
A2s
12 W
35 V (500 ms)
50 s
Electronic
Comfort Panels
192
Technical Support
Miscellaneous
HMI devices
KP400 C
omfort
KTP400
Comfort
KP700
Comfort
TP700
Comfort
TP900
Comfort
KP1200
Comfort
TP1200
Comfort
Yes
Onboard beeper
KP900
Comfort
8.4.2
Weight
HMI devices
KP1500 Comfort
Weight without packaging
TP1500 Comfort
5.4 kg
TP1900 Comfort
5.2 kg
6.5 kg
TP2200 Comfort
7.1 kg
Display
HMI devices
KP1500 Comfort
Type
TP1500 Comfort
TP2200 Comfort
LCD TFT
15,4''
18,5''
21,5''
331 x 207 mm
410 x 230 mm
475 x 267 mm
Possible colors
Up to 16 million
Brightness control
Backlighting
Half Brightness Life Time (MTBF
TP1900 Comfort
LED
2)
80000 h
LED
LED
50000 h
30000 h
MTBF: Operating hours after which the maximum brightness is reduced by half compared to the original value. MTBF is
increased by using the integrated dimming function, for example time-controlled via screen saver or centrally via
PROFIenergy.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
193
Technical Support
Input device
HMI devices
KP1500 Comfort
TP1500 Comfort
TP1900 Comfort
Yes
No
No
Yes
Function keys
36
No
Labeling strips
Yes
No
TP2200 Comfort
Memory
HMI devices
KP1500 Comfort
TP1500 Comfort
24 MB
4 MB
TP2200 Comfort
24 MB
Memory card
1
TP1900 Comfort
Interfaces
HMI devices
KP1500 Comfort
1 x RS 422/485 (PROFIBUS)
Ethernet (PROFINET)
Ethernet (PROFINET basic
functionality)
Audio
TP1500 Comfort
TP1900 Comfort
TP2200 Comfort
USB 2.0
2 x Host 2
1 x Device 3
USB type A, maximum load 500 mA, equivalent to USB standard 2.0
Comfort Panels
194
Technical Support
Power supply
HMI devices
KP1500 Comfort
TP1500 Comfort
Rated voltage
TP1900 Comfort
TP2200 Comfort
24 V DC
+19.2 V to +28.8 V
Rated current
1.5 A
1.3 A
2.2 A
32 W
53 W
0.5 A2s
Power
36 W
35 V (500 ms)
50 s
Internal protection
Electronic
Miscellaneous
HMI devices
KP1500 Comfort
Buffered real-time clock 1
Audio reproduction
Magnetic field intensity
1
TP1500 Comfort
TP1900 Comfort
TP2200 Comfort
Yes
Integrated or external via Line OUT
50/60 Hz; 100 A/m RMS
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
195
Technical Support
8.4.3
Ambient conditions
8.4.3.1
Permitted range
1m
Temperature
From 20 to +60 C
Atmospheric pressure
Relative humidity
KP/KTP400 Comfort:
5 to 9 Hz: 3.5 mm
Shock according to
250
m/s2,
NOTICE
Avoid dewing
If the HMI device is subjected to low temperatures or extreme fluctuations in temperature
during transportation, moisture could occur on or inside the HMI device. Dewing can occur.
This can cause malfunctions.
The HMI device must have acquired room temperature before it is put into operation. Do
not expose the HMI device to direct radiation from a heater in order to warm it up. If there is
condensation, wait approximately four hours until the HMI device has dried completely
before switching it on.
Proper transport and storage, installation and assembly as well as careful operation and
maintenance are required to ensure trouble-free and safe operation of the HMI device.
The warranty for the HMI device will be deemed void if these stipulations are not heeded.
Comfort Panels
196
Technical Support
8.4.3.2
Operating conditions
Constant
Occasional
5 Hz f 8.4 Hz 1
Amplitude 0.0375 mm
Amplitude 0.075 mm
8.4 Hz f 150 Hz
Constant acceleration 1 g
Reducing vibrations
If the HMI device is subjected to greater shocks or vibrations, you must take appropriate
measures to reduce acceleration or amplitudes.
We recommend mounting the HMI device on damping materials (on rubber-metal vibration
dampers, for example).
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
197
Technical Support
Test standard
Comments
Vibrations
Type of vibration:
Frequency cycles at a rate of change of 1
octave/minute.
5 Hz f 8.4 Hz, constant amplitude 0.075 mm
1
Permitted range
Comments
Temperature:
Vertical mounting
From 0 to 50 C (horizontal) 1
From 0 to 40 C (vertical)
Mounting at an angle
From 0 to 40 C (horizontal)
From 0 to 35 C (vertical)
Relative humidity
Atmospheric pressure
Pollutant concentration
Comfort Panels
198
Technical Support
8.4.3.3
Test voltages
Insulation strength is demonstrated in the type test with the following test voltages in
accordance with IEC 61131-2:
Circuits with a nominal voltage of Ue to other
circuits or ground
24 V
Test voltage
520 V DC or 370 V AC
For Ethernet connector: 1500 V AC
Protection class
Protection Class I in accordance with IEC 61140, i.e. PE/ground terminal to profile rail
required!
Explanation
Front
When mounted:
Rear panel
IP65
IP20
Touch protection test with standard test probes. There is no
protection against ingress by water.
The front protection rating can only be guaranteed if the mounting seal lies flush against the
mounting cut-out.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
199
Technical Support
8.5
8.5.1
KTP400 Comfort
HMI device
Inputs
Outputs
Touch operation
4 bytes
/('
7RXFKEXWWRQV
'LUHFWNH\DVVLJQPHQW
%\WH
Q
Q
Q
Q
1RRXWSXWDUHD
HMI device
Inputs
Outputs
Key operation
1 byte
1 byte
/('
.H\V
'LUHFWNH\DVVLJQPHQW
%\WH
)
)
)
)
Q
)
)
)
)
Comfort Panels
200
Technical Support
8.5.2
KP400 Comfort
Inputs
Outputs
1 byte
1 byte
/('
.H\V
'LUHFWNH\DVVLJQPHQW
8.5.3
)
)
)
%\WH
)
)
)
)
)
Q
)
)
)
)
)
)
)
)
KP700 Comfort
Inputs
Outputs
3 bytes
3 bytes
/('
.H\V
'LUHFWNH\DVVLJQPHQW
8.5.4
%\WH
)
)
)
)
)
)
Q
)
)
)
)
)
)
)
)
)
)
)
)
)
)
Q
)
)
)
)
)
)
)
)
) )
)
)
)
Q
)
) )
) )
)
)
)
)
)
)
)
)
) )
TP700 Comfort
Inputs
Outputs
4 bytes
--
/('
7RXFKEXWWRQV
'LUHFWNH\DVVLJQPHQW
%\WH
Q
Q
Q
Q
1RRXWSXWDUHD
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
201
Technical Support
8.5.5
KP900 Comfort
Inputs
Outputs
4 bytes
4 bytes
/('
.H\V
'LUHFWNH\DVVLJQPHQW
8.5.6
%\WH
)
)
)
)
)
)
Q
)
)
)
)
)
)
)
)
Q
)
)
) )
)
)
)
Q
)
) )
)
)
Q
)
)
)
)
)
) )
)
)
)
)
)
)
)
)
)
)
)
)
) )
)
)
)
)
)
TP900 Comfort
Inputs
Outputs
5 bytes
--
/('
7RXFKEXWWRQV
'LUHFWNH\DVVLJQPHQW
%\WH
Q
Q
Q
Q
Q
1RRXWSXWDUHD
Comfort Panels
202
Technical Support
8.5.7
KP1200 Comfort
Inputs
Outputs
5 bytes
5 bytes
/('
.H\V
'LUHFWNH\DVVLJQPHQW
8.5.8
%\WH
)
)
)
)
)
)
Q
)
)
)
)
)
)
)
)
Q
)
)
) )
) )
)
)
)
Q
)
) )
) )
) )
)
Q
)
)
)
Q
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
) )
) )
)
)
)
) )
) )
) )
)
)
)
TP1200 Comfort
Inputs
Outputs
5 bytes
--
/('
7RXFKEXWWRQV
'LUHFWNH\DVVLJQPHQW
%\WH
Q
Q
Q
Q
Q
1RRXWSXWDUHD
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
203
Technical Support
8.5.9
KP1500 Comfort
Inputs
Outputs
5 bytes
5 bytes
/('
.H\V
'LUHFWNH\DVVLJQPHQW
8.5.10
%\WH
)
)
)
)
)
)
Q
)
)
)
)
)
)
)
)
Q
)
)
) )
) )
)
)
)
Q
)
) )
) )
) )
)
Q
)
)
) )
)
Q
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
) )
) )
)
)
)
) )
) )
) )
)
)
) )
)
Outputs
5 bytes
--
/('
7RXFKEXWWRQV
'LUHFWNH\DVVLJQPHQW
%\WH
Q
Q
Q
Q
Q
1RRXWSXWDUHD
Comfort Panels
204
Technical Support
8.6
8.6.1
Power supply
Plug connector, 2-pin
Pin number
8.6.2
Assignment
GND 24 V (M)
Pin
n. c.
n. c.
GND 24 V
GND 24 V
TxD+
RD+
RTS
GND 5 V, floating
GND 5 V, floating
+5 VDC, floating
+5 VDC, floating
TxD
Data channel A ()
RxD
NC
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
205
Technical Support
8.6.3
8.6.4
Pin
Assignment
Tx+
Tx
Rx+
n. c.
n. c.
Rx
n. c.
n. c.
Pin
Assignment
D1+
D1
D2+
D3+
D3-
D2-
D4+
D4-
Comfort Panels
206
Technical Support
8.6.5
USB
USB socket type A
Name of interface on HMI device: X61/X62
Pin
Assignment
USB-DN
USB-DP
GND
8.6.6
Pin
Assignment
USB-DN
USB-DP
GND
Audio (IN/OUT)
Name of interface on HMI device: X90
Line in/out plug
Pin
Assignment
GND
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
207
Technical Support
8.7
Number of connections
Connection
KP400 Comfort
KTP400 Comfort
NOTICE
Communication faults with PROFINET IO
If you enable PROFINET services in the Control Panel of the HMI device, communication
problems can occur if you use PLCs from other manufacturers.
PLCs that are not compatible with PROFINET services are noted in the following table in
the footnote. Do not enable PROFINET services for these PLCs.
PLCs
The following table shows the PLCs and the communication drivers which can be used with
the HMI devices.
PLC
HMI devices
SIMATIC S7-1200
Yes
SIMATIC S7-300/400
Yes
SIMATIC S7-200
Yes
Yes
OPC
Yes
OPC UA
Yes
Allen-Bradley EtherNet/IP
Yes
Allen-Bradley DF1
Yes 2, 3
Mitsubishi MC TCP/IP
Yes
Mitsubishi FX
Yes 3
Yes
Yes 3
Omron Hostlink
Yes 3
OPC-XML DA Server
Direct communication with PLC 5, with the KF2 module, otherwise approved only via the optional
converter RS422-RS232, order number 6AV6 671-8XE00-0AX0.
Comfort Panels
208
Technical Support
8.8
Alarms
Object
Alarms
Specification
HMI devices
KP400 Comfort
KTP400 Comfort
KP700 Comfort to
KP1200 Comfort,
TP700 Comfort to
TP1200 Comfort
2000
4000
50
Alarm length
KP1500 Comfort,
TP1500 Comfort to
TP2200 Comfort
6000
200
80 characters
Max. 8
32
Display
Yes
Edit alarm
Yes
Alarm indicator
Yes
ALARM_S
Display S7 alarms
Alarm buffer,
retentive
256
Yes
1024
64
500
View alarm
Yes
Yes
Yes
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
209
Technical Support
Specification
HMI devices
KTP400 Comfort
KP700 Comfort to
KP1200 Comfort
TP700 Comfort to
TP1200 Comfort
KP1500 Comfort,
TP1500 Comfort to
TP2200 Comfort
1024
2048
4096
KP400 Comfort
Tags
Number
Input/output
Yes
Linear scaling
Input/output
Yes
Text lists
Number
300
500 1
Graphics lists
Number
100
500 1
Screens
Object
Specification
HMI devices
KP400 Comfort
KP700 Comfort to
KP1200 Comfort
TP700 Comfort to
TP1200 Comfort
KTP400 Comfort
Screens
Number
500
KP1500 Comfort,
TP1500 Comfort to
TP2200 Comfort
750
50
400
600
50
400
600
20
40
Template
Yes
Recipes
Object
Specification
HMI devices
KTP400 Comfort
KP700 Comfort to
KP1200 Comfort
TP700 Comfort to
TP1200 Comfort
KP1500 Comfort,
TP1500 Comfort to
TP2200 Comfort
Number
100
300
500
200
500
1000
200
1000
2000
32 KB
256 KB
4 MB
KP400 Comfort
Recipes
Recipe memory
Storage location 1
Network drive
The number of recipe data records may be restricted by the capacity of the storage medium.
Comfort Panels
210
Technical Support
Logs
Note
The HMI devices are suitable for the logging of relatively small volumes of data.
Manage the data in several adjacent archives in a segmented circular log. The use of a large
circular log has a negative effect on performance.
Object
Specification
HMI devices
KP400 Comfort
KTP400 Comfort
Logs
Number of logs
10
50
400
10000
Filing format
Storage location
KP1500 Comfort,
TP1500 Comfort to
TP2200 Comfort
KP700 Comfort to
KP1200 Comfort
TP700 Comfort to
TP1200 Comfort
20000
50000
Memory card
Network drive
The number of entries in the log may be restricted by the capacity of the storage medium.
Note
Data consistency
When the HMI device is switched off, consistency of the stored data is ensured only for the
SIMATIC HMI Memory Card 2 GB.
With commercially available memory cards, switching off the device may result in the loss of
saved data, for example due to a power failure.
The consistency of data stored in archives is only guaranteed if you use RDB format.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
211
Technical Support
Safety
Object
Specification
HMI devices
KP400 Comfort
KTP400 Comfort
User view
KP1500 Comfort,
TP1500 Comfort to
TP2200 Comfort
KP700 Comfort to
KP1200 Comfort
TP700 Comfort to
TP1200 Comfort
50
Number of users
50
Number of authorizations/
user permissions
32
Infotexts
Object
Specification
HMI devices
KP400 Comfort
Infotexts
KP1500 Comfort,
TP1500 Comfort to
TP2200 Comfort
KP700 Comfort to
KP1200 Comfort
TP700 Comfort to
TP1200 Comfort
KTP400 Comfort
For alarms
Yes
For screens
Yes
Yes
Additional functions
Object
Specification
HMI devices
KP400 Comfort
Screen settings
Yes
Brightness setting
Yes
Language change
32
VBScript
User-specific extension of
the functionality
Yes
Number of scripts
KP1500 Comfort,
TP1500 Comfort to
TP2200 Comfort
KP700 Comfort to
KP1200 Comfort
TP700 Comfort to
TP1200 Comfort
KTP400 Comfort
100
200
Graphic objects
Trends
Number
50
Yes
Task planner
Number of tasks
10
Text objects
Number
Direct keys
Yes
Yes
300
400
48
2500
40000
Comfort Panels
212
Technical Support
Technical Support
A.1
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
213
Technical Support
A.2 Troubleshooting
A.2
Troubleshooting
This section contains information on localizing and rectifying possible faults.
Error message
Possible cause
Remedy
"System card is
missing or defective"
No system memory
card inserted.
A.3
System events
System events on the HMI device provide information about internal states of the HMI device
and PLC.
Note
System events are only indicated if an alarm window was configured. System events are
output in the language currently set on your HMI device.
System event parameters
System events may contain encrypted parameters which are relevant to troubleshooting
because they provide a reference to the source code of the runtime software. These
parameters are output after the text "Error code:"
Comfort Panels
214
Abbreviations
ANSI
CPU
CSV
CTS
Clear To Send
DC
Direct Current
DCD
DHCP
DIL
DNS
DP
Distributed I/O
DSN
DSR
DTR
IO
ESD
EMC
Electromagnetic Compatibility
EN
European standard
ES
Engineering System
ESD
GND
Ground
HF
High Frequency
HMI
IEC
IF
Interface
IP
Internet Protocol
LED
MAC
MOS
MPI
MS
Microsoft
MTBF
n. c.
Not connected
OP
Operator Panel
PC
Personal Computer
PG
Programming device
PPI
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
215
Abbreviations
RAM
PELV
RJ45
RTS
Request to send
RxD
Receive Data
SP
Service Pack
PLC
Sub-D
Subminiature D (plug)
TAB
Tabulator
TCP/IP
TFT
TxD
Transmit Data
UL
Underwriters Laboratory
USB
UPS
WINS
Comfort Panels
216
Glossary
"Transfer" mode
The "Transfer" operating mode is an operating mode of the HMI device in which an
executable project is transferred from the configuring PC to an HMI device.
Acknowledge
Acknowledgment of an alarm confirms that it has been noted.
Alarm logging
Output of user-specific alarms to a printer, in parallel to their output to the HMI device
screen.
Alarm, acknowledgment
Acknowledgment of an alarm confirms that it has been noted.
Alarm, activated
Moment at which an alarm is triggered by the PLC or HMI device.
Alarm, deactivated
Moment at which the initiation of an alarm is reset by the PLC.
Alarm, user-specific
A user-specific alarm report specific operating states of a plant interconnected to the HMI
device via the PLC.
Automation system
An automation system is a PLC of the SIMATIC S7 series, for example SIMATIC S7-300
Boot loader
The boot loader is used to start the operating system and is started automatically after power
on of the HMI device. The loader is displayed after the operating system has loaded.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
217
Glossary
Configuration software
Configuration software is used to create projects used for the purpose of process
visualization. WinCC represents such configuration software, for example.
Configuring PC
A configuring PC is a programming device or PC on which plant projects are created using
an engineering software.
Degree of protection
The degree of protection specifies a standard of electronic equipment for a variety of
ambient conditions and the protection of humans against potential danger when using this
equipment.
The degree of protection classified by IP differs from the protection class. But both involve
protection against touching dangerous electric voltage. The degree of protection also
classifies the protection of equipment against dirt and moisture.
Display duration
Defines whether a system event is displayed on the HMI device and the duration of the
display.
EMC
Electromagnetic compatibility (EMC) refers to a usually desirable state, in which technical
equipment does not disturb one another with unwanted electrical or electromagnetic effects.
Electromagnetic compatibility deals with technical and regulatory questions of undesired,
mutual influence in electrical engineering.
Event
Functions are triggered by defined incoming events. Events can be configured. Events which
can be assigned to a button include "Press" and "Release", for example.
Field
Area reserved in configured screens for the input and output of values.
Flash memory
Flash memory is a non-volatile memory with EEPROM chips that is implemented either as
mobile storage medium, or as permanently installed memory module on the motherboard.
Comfort Panels
218
Glossary
Function key
Function keys on the HMI device can be assigned user-specific functions. The functions
assigned to these keys are defined during configuration. The assignment of the function keys
may be specific to an active screen or independent of it.
Hardcopy
Output of the screen content to a printer.
HMI device
An HMI device is a device used for the operation and monitoring of machines and plants.
The machine or plant states are visualized on the HMI device by means of graphic objects or
signal lamps. The operator controls of the HMI device allow the operator to interact with the
processes of the machine or plant.
I/O field
An I/O field enables the input or output of values on the HMI device which are transferred to
the PLC.
Infotext
An infotext is a configured information on objects within a project. Infotext for an alarm, for
example, may contain information on the cause of the fault and troubleshooting routines.
Object
An object is a project element such as a screen or an alarm. Objects are used to view or
enter texts and values on the HMI device.
Operating element
An operating element is a component of a project used to enter values and trigger functions.
A button, for example, is an operating element.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
219
Glossary
Plant
General term referring to machines, processing centers, systems, plants and processes
which are operated and monitored on an HMI device.
PLC
PLC is a general term for devices and systems with which the HMI device communicates, for
example SIMATIC S7.
PLC job
A PLC job triggers a function for the PLC on the HMI device.
Process visualization
Process visualization is the representation of technical processes by means of text and
graphic elements. Configured plant screens allow operator intervention in active plant
processes using the input and output data.
Project
A project is the result of a configuration using a configuration software. The project normally
contains several screens with embedded system-specific objects, basic settings and alarms.
A project configured with WinCC is saved in a project file with the extension "*. ap11".
You need to distinguish between a project on the configuring PC and an executable project
on an HMI device. A project on the configuring PC can be available in more languages than
can be managed on the HMI device. The project on the configuring PC can also be set up for
different HMI devices. You can only transfer an executable project to an HMI device if it has
been especially compiled for it.
Project file
A project file is a file from which the executable project file for use on the HMI device is
generated. The project file is usually not transferred and is retained on the configuring PC.
The file name extension of a project file is "*.ap11".
Comfort Panels
220
Glossary
Protection class
The protection class is used in electrical engineering to classify and identify electrical
equipment in relation to existing safety measures designed to prevent electric shock.
There are four protection classes for electrical equipment.
Recipe
A recipe is a combination of tags that form a fixed data structure. The configured data
structure can be assigned data in the configuration software or on the HMI device and is
then referred to as a record. The use of recipes ensures that all data assigned to a data
record is transferred synchronously to the PLC.
Runtime software
The runtime software is a process visualization software used to test a project on a
configuring PC.
Screen
A screen is a form of visualization for all logically related process data in a plant. The
representation of the process data can be visually supported by graphic objects.
Screen object
A screen object refers to objects such as rectangles, I/O fields or alarm views which are
configured for visualization or operation of the plant.
System event
A system event is assigned to the "System" alarm class. A system event refers to internal
states on the HMI device and the PLC.
Tab order
The tab order defined in the course of project engineering determines the sequence for
activating objects by pressing the <TAB> key.
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
221
Glossary
Tag
A tag is a defined memory location to which values can be written and from which values can
be read. This can be done from the PLC or the HMI device. We distinguish between external
tags (process tags) and internal tags, depending on whether or not the tag is interconnected
with the PLC.
Transfer
Transfer of a runtime project from the configuring PC to the HMI device.
WinCC
WinCC (TIA Portal) is engineering software for configuring SIMATIC Panels, SIMATIC
Industrial PC and standard PC with the visualization software WinCC Runtime Advanced or
the SCADA system, WinCC Runtime Professional.
Comfort Panels
222
Index
A
ACK key, 73
Acknowledge key, 73
Acoustic feedback, 155
Acoustic signal
For inadvertent operation, 155
with inadvertent operation, 80
Acoustics
Feedback, 97, 98
Add-on
Installing, 139, 149
Removing, 139, 149
Add-ons, 23
Address assignment
TCP/IP network, 119
Addressing, 117
Alarm
Functional scope, 209
Alarm buffer
Functional scope, 209
ALARM_S, 209
Alphanumeric values
Entering, 161
ALT key, 70
Ambient conditions
Climatic, 198
Mechanical, 197
Test, 198
Approval for Australia, 171
Approvals, 169
Assigning
Sound to an event, 80
Audit, 23
B
Backlighting
Reducing, 94
Setting, 80
Backspace key, 70
Backup, 79, 139, 144
HMI device data, 145
Registry Information, 79, 90
Temporary files, 90
to external storage device, 79
to external storage medium, 131
Basic knowledge
Required, 3
Booting, 99
Brightness
Changing, 92
Setting, 79
Browser
Home page, 79
Setting, 79
Bus connection, 208
C
Cable
Data exchange, 50
Cables
Connecting, 41
Cache memory
Internet, 127
Calibrating
Touch screen, 79, 84
Cancel key, 70
Care, 165
CE approval, 169
Certificate
Delete, 79, 130
Displaying, 79
Importing, 79, 130
Certificates, 169
Changing
Brightness, 92
Color depth, 92
Screen orientation, 92
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
223
Index
Character repeat, 79
Screen keyboard, 82
Clean screen, 166
Cleaning product, 165
Clearance
HMI device, 32
Climatic
Storage conditions, 196
Transport conditions, 196
Closing
Project, 163
Color depth
Changing, 92
Setting, 79
Compatibility conflict, 144
Components sensitive to electrostatic charge, 174
Computer name
For network operation, 118
Setting, 80
Conductor cross-section, 44
Equipotential bonding, 42
Configuration phase, 137
Configuring
Network, 118
Operating system, 65
Remote operation via Sm@rtServer, 80
Screen keyboard, 79, 81
Sm@rtServer, 80, 125
Time server, 80
Configuring PC, 137
Connecting, 46
Wiring diagram, 46
Connecting
Equipotential bonding, 42
PLC, 48
Power supply, 44
Power supply terminal, 45
Printer, 50
PROFINET, 48
Uninterruptible power supply, 45
USB device, 49
Connection, 208
Connection sequence, 41
Connections to PLC
Number, 208
Control key, 61
Control Panel, 67
MPI, 116
Opening, 67
Password protection, 66
PROFIBUS, 116
Convention
Style, 4
Term, 5
Converters and adapters, 21
Cookies, 79, 128
CTRL key, 70
Currency, 80
Cursor key, 61, 70
D
Data channel
Enabling, 113
Locking, 113
Parameter assignment, 80, 113
Date, 79
Setting, 87
Synchronizing, 87
Date format, 80, 89
Date/time properties, 79, 88
Decimal, 159
Default gateway, 121
Degree of protection, 33
Protection against ingress of solid foreign
bodies, 199
Protection against water, 199
Delay time
Setting, 80, 105
Delete
Certificate, 79, 130
Delete key, 70
Dewing, 196
DHCP, 120
Direct key, 157
Bit assignment, 200
Functional scope, 212
Disabling
Service concept, 64
Display
HMI devices, 191, 193
Displaying
Certificate, 79
Displaying information about the HMI device, 101
HMI device information, 79
Infotext, 162
Memory information, 102, 103
System information, 102, 103
Disposal, 167
Comfort Panels
224
Index
DNS, 121
Server,
Documentation
Enclosed, 29
Double-click, 79
Setting, 83
Drop-down list box
Opening, 72
E
EC Declaration of Conformity, 169
Elbow adapter, 21
Electrical isolation
Safe, 44
Electrical potential difference, 42
Electromagnetic compatibility, 172
E-Mail
Setting, 80, 124
EMC, 172
Emission, 27, 173
Enable
SecureMode, 86
Service concept, 62
Encryption, 128
END key, 70
Enter key, 70
ENTER key, 70
Entering
Alphanumeric values, 161
Hexadecimal values in the project, 159
Numeric values in the project, 160
Value, 158
Entry on the HMI device
By means of function key, 156
Equipotential bonding
Cable, 43
Connecting, 42
Requirements, 42
Wiring diagram, 43
ESC key, 70
ESD, 174
ESD guidelines, 174
Ethernet parameters
Setting, 79
Ethernet settings
IP address, 120
Excel Viewer, 23
F
Factory settings, 47
Feedback
Acoustic, 97, 98, 155
Optical, 154
Figure, 5
FM Approval, 170
Front view
4" model,
Devices with 7" and larger displays,
Function
Additional, 212
Function key, 61
Labeling, 34
Function keys
Global assignment, 156
Local assignment, 156
Function test, 53
Functional scope
Alarm buffer, 209
ALARM_S, 209
Alarms, 209
Graphics list, 210
Infotext, 212
Limit value monitoring, 210
Log, 211
Recipe, 210
Safety, 212
Scaling, 210
Screen, 210
Tags, 210
Text list, 210
User view, 212
G
Graphics list
Functional scope, 210
Guidelines
ESD guidelines, 174
Guidelines for Explosion Protection, 171
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
225
Index
H
Hexadecimal values
Entering in the project, 159
HMI device
Backing up data, 145
Clearance, 32
EMC-compatible installation, 172
Mounting, 39
Operating with system keys, 69
Operator control, 60
Resetting to factory settings, 148
Restart, 99
Restarting, 79
Restoring data, 145
Shutting down, 53
Switching on, 52
Technical specifications, 191, 193
Testing, 52
Transfer license key, 150
Updating the operating system (Windows CE), 147
HMI devices
Display, 191, 193
Input device, 191, 194
Interfaces, 192, 194
Memory, 192, 194
Weight, 191, 193
HMI Input Panel
Options, 80
HOME key, 70
Home page
Internet, 126
I
Identification, 123
Importing
Certificate, 79, 130
Inadvertent operation
Acoustic signal, 80, 155
Information
For the HMI device, 101
Infotext
Displaying, 162
Functional scope, 212
Key, 73
Initial startup, 137
Input device
HMI devices, 191, 194
Input Panel, 79
Installing
Add-on, 139, 149
Instructions
General, 27
Insulation test
Test voltage, 199
Interface
Rated load, 49
Interfaces
HMI devices, 192, 194
Interference
Pulse-shaped, 172
Sinusoidal, 173
Internal clock, 87
Internet
Browser, 69
Cache memory, 127
Explorer, 69
Home page, 126
Options, 79
Search engine, 126
Security settings, 79
Settings, 80, 124
Internet options
Privacy, 128
IP address
Ethernet, 120
Setting, 79
IT Security, 26
K
Key
ACK, 73
ALT, 70
Cancel, 70
CTRL, 70
Cursor, 70
Delete, 70
END, 70
ENTER, 70
ESC, 70
HOME, 70
Infotext, 73
Scroll back, 70
Scroll forward, 70
SHIFT, 70
Switching, 70
TAB, 71
Tabulator, 71
Keyboard
Safety instruction, 61
Keyboard properties, 79
Comfort Panels
226
Index
L
Labeling
Approvals, 170
EC Declaration of Conformity, 169
Function key, 34
Guidelines for Explosion Protection, 171
Labeling strips
Attaching, 35
Dimensions, 189
Printing, 34
LAN connection, 79
Language change
Functional scope, 212
License
Managing, 150
License key
Transfer to an HMI device, 150
Transferring, 139
Transferring back, 139
License keys, 150
Limit test, 159
Limit value monitoring
Functional scope, 210
List of abbreviations, 215
Loader, 65
Opening, 65
Log
Format, 211
Functional scope, 211
Logon data, 123
M
Maintenance, 165, 167
Managing
License, 150
Mechanical
Storage conditions, 196
Transport conditions, 196
Media Player, 68
Memory
HMI devices, 192, 194
Memory card, 21
Restoring file system, 90
Memory card lock protection, 21
Memory information, 80
Displaying, 102, 103
Memory management, 79, 135
Memory media, 21
Microsoft Excel Viewer, 23
Microsoft PDF Viewer, 23
N
Name server, 121
Network
Configuring, 118
Logon data, 79
Set up, 117
Setting, 119
Network & dial-up connections, 79
Network ID, 79
Network operation
Computer name, 118
Non-isolated plant configuration, 44
Notice of protected rights, 4
Number format, 80, 89
Numeric value
Decimal places, 159
Limit test, 159
Numeric values
Entering in the project, 160
O
Offline
Operating mode, 138
Test, 143
Online
Operating mode, 138
Test, 144
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
227
Index
OP properties, 79
Device, 101
Memory monitoring, 135
Persistent storage, 90
Touch, 84
Opening
Control Panel, 67
Drop-down list box, 72
Loader, 65
Operating
Control Panel with system keys, 72
Dialog with system keys, 72
Explorer with system keys, 71
Feedback, 154
HMI device with system keys, 69
Project with system keys, 73
Windows CE with system keys, 71
With external keyboard, 153
With external mouse, 153
Operating instructions
Purpose, 3
Scope, 3
Operating mode, 138
Changing, 138
Offline, 138
Online, 138
Transfer, 52, 138
Operating system
Configuring, 65
Operation feedback, 154
Setting, 80
Optical feedback, 154
P
Parameter assignment
Data channel, 80, 113
Password
Specifying, 86
Password properties, 79, 86
Password protection, 79
Removing, 87
Set up, 86
Taskbar, 66
PDF Viewer, 23
PELV, 44
Plant configuration
Non-isolated, 44
PLC
Connecting, 48
Number of connectable, 208
Protocol, 208
Wiring diagram, 48
Power failure, 144
Power supply
Connecting, 44
HMI devices, 192, 195
Setting, 80
State, 80
Wiring diagram, 44
Power supply terminal
Connecting, 45
Printer
Connecting, 50
Setting properties, 79
Wiring diagram, 50
Printer connection
Setting, 96
Printer properties, 79, 96
Printing
Labeling strips, 34
Via network printer, 118
Process control phase, 137
PROFIBUS DP
Setting, 80, 116
PROFINET, 117
Addressing, 117
Connecting, 48
PROFINET IO
Communication, 48
Communication fault, 208
Setting, 80
PROFINET services
Disabling direct keys, 109
Enable PROFIenergy, 109
Enabling direct keys, 109
Project
Closing, 163
Offline testing, 143
Reuse, 138
Testing online, 144
Transferring, 137, 139
Protected trademark, 4
Protection class, 199
Protective foil, 21
Protective measure
Static electricity, 176
Comfort Panels
228
Index
Protocol
PLC, 208
Proxy
Server, 79, 124, 127
Setting, 79
Restoring data
HMI device, 145
Returns Center, 167
Reverse polarity protection, 45
RS 422 to RS 232 converter, 21
Radiation, 26
High frequency radiation, 26
Radio interference, 27
Emission, 173
Rated load
Interface, 49
Real-time clock
Internal, 87
Rear view
4" model,
Devices with 7" and larger displays,
Recipe
Functional scope, 210
Recommissioning, 137
Recycling, 167
Reducing
Backlighting, 94
Regional and language settings, 80, 89
Regional settings, 89
Registered trademark, 4
Registry Information
Backup, 79, 90
Remote control
Configuring via Sm@rtServer, 80
Removing
Add-on, 139, 149
Password protection, 87
SecureMode, 87
Repairs, 167
Replacing HMI device
With service concept, 63
Reset to factory setting, 139
Reset to factory settings, 146
Resetting
HMI device factory settings, 148
Resetting to factory settings, 47
Restore, 79, 131, 139, 144
From external storage medium, 133
HMI device data, 145
Restoring
From external storage medium, 79
From memory card, 90
S7 transfer settings, 80
Safe electrical separation, 44
Safety
Certificates, 169
Functional scope, 212
Standards, 169
Safety instruction
Backlighting, 94
Compatibility conflict, 144
Damage to the HMI device, 41
Device name, 110
Direct key, 156
Equipotential bonding cable, 43
Functional problem, 49
Keyboard, 61
Loss of data possible, 133
Memory distribution, 103
Multi-key operation, 154
Operation indoors, 27
Path, 104, 105
Power failure, 144
Preventing inadvertent operation, 165, 166
Project file, 104, 105
Restart, 99
Storage, 196
Switching infotext, 163
Time-dependent reactions, 87
Touch screen, 60
Transfer mode, 115
Transport, 196
Unintentional action, 60, 61
Unintentional response, 165, 166
Unintentional transfer mode, 113
USB port, 49
Scaling
Functional scope, 210
Screen
Functional scope, 210
Screen keyboard, 79
Character repeat, 82
Configuring, 81
Usage, 78
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
229
Index
Screen orientation
Changing, 92
Setting, 79
Screen saver, 80, 94
Setting, 94
Scroll back key, 70
Scroll forward key, 70
Search engine
Internet, 126
SecureMode
Enable, 86
Removing, 87
Switching on again, 87
Security information, 26
Security settings, 79
Service concept
Disabling, 64
Enable, 62
Replacing HMI device, 63
Service pack, 167
Service packages, 21
Set up
Network, 117
Password protection, 86
Time server, 111
Setting
Backlighting, 80
Brightness, 79
Browser, 79
Color depth, 79
Computer name, 80
Date, 87
Date format, 89
Date/Time, 79
Delay time, 80, 105
Double-click, 83
E-Mail, 80
E-mail connection, 124
Ethernet parameters, 79
IP address, 79
Language, 157
MPI, 80, 116
Name server, 79
Network, 119
Number format, 89
Operation feedback, 80
Power supply, 80
Printer connection, 96
Printer properties, 79
PROFIBUS, 116
PROFIBUS DP, 80
PROFINET IO, 80
Proxy, 79
Regional data, 89
Screen orientation, 79
Screen saver, 94
Sound, 98
Storage location, 80, 104
Time, 87
Time format, 89
Transfer mode, 141
Setting language, 157
Comfort Panels
230
Index
Settings
Internet, 80
Language, 80
Regional, 80
S7-Transfer, 80
Shift key, 70
SHIFT key, 70
Shutting down
HMI device, 53
Side view
4" model,
Devices with 7" and larger displays,
Siemens HMI input panel options, 79
Sm@rtServer, 23
Configuring, 80, 125
SMTP server, 124
Software add-ons, 23
Sound
Assigning to an event, 80
Setting, 80, 98
Setting event, 98
Spare part
Plastic clamp, 21
Power supply terminal, 21
Standards, 169
Start
HMI device, 79, 99
Transfer, 142
Static electricity
Protective measures, 176
Storage conditions, 196
Storage location
Setting, 80, 104
Storage medium
Restoring from external, 133
Saving to external, 131
Strain relief, 53
Subnet mask, 121
Switching on
HMI device, 52
Switching on again
SecureMode, 87
Synchronizing
Date and time, 87
System events
in the online help, 214
Parameters, 214
System information, 80
Displaying, 102, 103
System key, 61
System keys
Operating a dialog, 72
Operating a project, 73
Operating the Control Panel, 72
Operating the Explorer, 71
Operating Windows CE, 71
System properties, 80
Device name, 118
General, 102
Memory, 103
T
TAB key, 71
Tabulator key, 71
Tags
Functional scope, 210
Task planner
Functional scope, 212
Taskbar, 65
TCP/IP address, 119
Technical specifications
Display, 191, 193
HMI devices, 191, 193
Input device, 191, 194
Interfaces, 192, 194
Memory, 192, 194
Power supply, 192, 195
Temporary files
Backup, 90
Test
For ambient conditions, 198
Testing
HMI device, 52
Text list
Functional scope, 210
Time, 79
Setting, 87
Synchronizing, 87
Time format, 80, 89
Time server
Configuring, 80
Set up, 111
Time zone
Setting, 87
Time-dependent reactions, 87
Touch screen
Calibrating, 79, 84
Safety instruction, 60
Trademark, 4
Comfort Panels
Operating Instructions, 03/2012, A5E03404994-02
231
Index
U
UL approval, 170
Unintentional action, 60, 61, 154
Unintentional transfer mode, 113
Uninterruptible power supply, 45
Updating
Operating system of the HMI device (Windows
CE), 147
Updating the operating system, 139, 146
UPS properties
Configuration, 106
Current status, 108
Usage
Screen keyboard, 78
USB device
Connecting, 49
USB flash drive, 21
Use
Conditions, 197
In residential areas, 27
Industrial, 27
With additional measures, 197
User name, 123
User view
Functional scope, 212
V
Value
Entering, 158
VBScript
Functional scope, 212
Viewer, 68
Volume, 97
Setting, 80
Volume & Sounds Properties, 80
W
Weight
HMI devices, 191, 193
WinCC flexible internet settings
E-mail, 124
E-Mail, 80
Windows CE Desktop
Password protection, 66
Windows CE taskbar, 65
WINS, 121
Server, 117
Wiring diagram
Configuring PC, 46
Equipotential bonding, 43
PLC, 48
Power supply, 44
Printer, 50
Word Viewer, 23
Comfort Panels
232