You are on page 1of 58

SIMATIC

S7-1200 / S7-1500
Comparison list for programming languages based on the international mnemonics
Reference manual

Edition

02/2014

Comparison list for S7-300, S7-400, S7-1200, S7-1500


Reference manual
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
indicates that minor personal injury can result if proper precautions are not taken.
NOTICE
indicates that property damage can result if proper precautions are not taken.
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.

A5E33285102-AA

Page 1

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.
Proper use of SIMATIC products
Note the following:
WARNING
WARNING
Siemens products may only be used for the applications described in the catalog and in the relevant technical documentation. If products and
components from other manufacturers are used, these must be recommended or approved by Siemens. Proper transport, storage, installation,
assembly, commissioning, operation and maintenance are required to ensure that the products operate safely and without any problems. The
permissible ambient conditions must be complied with. The information in the relevant documentation must be observed.

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
Comparison list for S7-300, S7-400, S7-1200, S7-1500
02/2014

A5E33284667-AA

Page 2

Overview of the comparison list


Below you will find an overview of which instructions and functions you can use for which controller family. To retain clarity, we
have structured the comparison list as follows:

Basic instructions
Instructions that you use often, such as bit logic operations, timers, counters, math functions

Extended instructions
More intricate instructions for further options, for example date and time, interrupts, alarms, PROFIenergy

Technological instructions (Technology)


Technological functions such as PID control, motion

Instructions for communication (Communication)


Instructions for communication such as S7 communication, Open User Communication
Validity and constraints

SIMATIC STEP 7 as of Version 12, service pack 1

SIMATIC S7-1200 as of firmware 3.x; SIMATIC S7-1200 supports only LAD, FBD and SCL.

STL: Some instructions need to be called up with CALL


Legend

( )
nn
grayed
out
xyz

usable
usable with restrictions
not necessary
We recommend that you do not use the grayed out commands in the S7-1200 or S7-1500. The reason for this is
that these commands are not suitable for symbolic addressing or multi-instances. SIMATIC counters and timers
are not advisable because they are not capable of multi-instances.
New instruction as of V13
For this the SIMATIC S7-1200 requires at least firmware 4.0 and SIMATIC S7-1500 at least firmware 1.5

A5E33285102-AA

Page 3

Measuring the runtime of instructions and program sections


The time required to execute parts of the user program and instructions depends on many factors. As result, a list of these in a
table is unfortunately not possible.
With the RUNTIME instruction (measurement of execution time), you measure the runtime of the entire program, individual
blocks or command sequences.
The runtime measurement begins when the RUNTIME instruction is called the first time and ends with the second call.
Example of a program in SCL:
Common_Data.opt.Last_Cycle := RUNTIME(#Tag_Memory); //Start of the runtime measurement,
Lreal "speed test FB opt_DB"(ON_2:=i1,);//Runtime measurement using RUNTIME
Common_Data.opt.Last_Cycle := RUNTIME(#Tag_Memory); //End of the runtime measurement
For runtime measurement of individual instructions, use an OB priority >15. This ensures that "online monitoring" does not
falsify the runtime.
You will find further information in the online help of SIMATIC STEP 7. Enter RUNTIME as the search term.

A5E33284667-AA

Page 4

Basic instructions

Extended instructions

Technology

Communication

Instructions in the section "Basic instructions"


Instruction groups

Page

Instruction groups

Page

Instruction groups

Page

Word logic operations

21

Bit logic operations

VARIANT instructions

11

Shift and rotate instructions

22

Timers

Move operations

13

Load and transfer

22

Counters

Conversion operations

15

Additional instructions

23

Comparator operations

Program control operations

17

S7-1500

10

S7-400

Math functions

S7-1200

S7-300

General

Description

General
Insert network
Insert empty box
Open branch
Close branch
Insert input
Invert Boolean result
Bit logic operations
AND logic operation

A5E33285102-AA

LAD / FBD

-|

STL
(not S7-1200)

SCL

nn

nn
nn
(
)

nn

-|NOT|-

-o|

&

nn
NOT

&

Page 5

S7-400

S7-1500

Scan operand for negative signal edge

S7-300

Extended instructions

S7-1200

Basic instructions

Description
OR logic operation
EXCLUSIVE or operation
Assignment
Negate assignment
Reset output
Set output
Set bit field
Reset bit field
Set/reset flip-flop
Reset/set flip-flop
Scan operand for positive signal edge

Set operand on positive signal edge


Set operand on negative signal edge
Scan Boolean result for positive signal edge
Scan Boolean result for negative signal edge

A5E33284667-AA

Technology
LAD / FBD

>=1

X
-( )-[=]
-(/)-[/=]
-(R)
-[R]
-(S)
-[S]
SET_BF
RESET_BF
SR
RS
-|P|-|N|-(P)-(N)P_TRIG
N_TRIG

Communication
STL
(not S7-1200)

SCL

O
X
=

OR
XOR
:=

NOT
R
S
nn
nn
nn
nn
<Operand>;
FP;
<Operand>;
FP;
R_TRIG
F_TRIG
FP
FN

nn
nn
nn
nn
nn
nn
nn
nn

nn
nn

Page 6

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

() Set tag on positive signal edge


S7-1200 LAD and FBD only
() Set tag on negative signal edge
S7-1200 LAD and FBD only
Normally open contact
Normally closed contact
Timers
IEC timers
Generate pulse
Generate on-delay
Generate off-delay
Time accumulator
Time accumulator (start timer)
Reset timer
Load time duration
Generate pulse
Start on-delay timer
Start off-delay timer
SIMATIC timers
Assign pulse timer parameters and start

A5E33285102-AA

Communication

Technology
LAD / FBD

STL
(not S7-1200)

SCL

R_TRIG
F_TRIG
-||-|/|-

nn
nn

-(TONR)- -[TONR]-(RT)-[RT]-(PT)-[PT]-(TP)-[TP]-(TON)- -[TON]-(TOF)-[TOF]S_PULSE

nn
nn

nn
nn

TP
TON
TOF
TONR
nn
nn
RESET_TIMER
PRESET_TIMER
nn
TP
SD
S_ODT
SF
S_OFFDT
nn

S_PULSE

Page 7

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Assign extended pulse timer parameters and


start
Assign on-delay timer parameters and start
Assign retentive on-delay timer parameters
and start
Assign off-delay timer parameters and start
Start pulse timer
Start extended pulse timer
Enable timer
Load timer value
Load BCD-coded timer value
Reset timer
Start on-delay timer
Start retentive on-delay timer

A5E33284667-AA

Technology

Communication

LAD / FBD

STL
(not S7-1200)

SCL

S_PEXT

nn

S_PEXT

S_ODT
S_ODTS

nn
nn

S_ODT
S_ODTS

S_OFFDT
-(SP)
-[SP]
-(SE)
-[SE]

nn
SP
SE
FR
L
LC
R
SD
SS

S_OFFDT
nn
nn
nn
nn
nn
nn
nn
nn

-(R)
-(SD)
-(SS)

-[R]
-[SD]
-[SS]

Page 8

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Counters
IEC counters
Count up
Count down
Count up and down
SIMATIC counters
Assign parameters and count up
Assign parameters and count down
Assign parameters and count up / down
Set counter value
Count up
Count down
Enable counter
Load counter
Load BCD-coded counter value
Reset counter
Set counter
Comparator operations
Equal
Not equal

A5E33285102-AA

Communication

Technology
LAD / FBD

STL
(not S7-1200)

SCL

CTU
CTD
CTUD
S_CU
S_CD
S_CUD
-(SC)
-[SC]
-(CU)
-[CU]
-(CD)
-[CD]

nn
nn
nn
nn
CU
CD
FR
L
LC
R
S

S_CU
S_CD
S_CUD
nn
nn
nn
nn
nn
nn
nn
nn

CMP ==
CMP <>

== I/D/R
<> I/D/R

=
<>

Page 9

S7-400

S7-1500

S7-300

S7-1200

Basic instructions

Extended instructions
Description

Greater or equal
Less or equal
Greater than
Less than
Value within range
Value outside range
Check validity
Check invalidity
Math functions
Calculate
Add
Subtract
Multiply
Divide
Return remainder of division
Create twos complement
Create ones complement
Increment
Decrement
Form absolute value

A5E33284667-AA

Technology

Communication
STL
(not S7-1200)

LAD / FBD

SCL

CMP >=
CMP <=
CMP >
CMP >
IN_RANGE
OUT_RANGE
-|OK|-|NOT_OK|-

>= I/D/R
<= I/D/R
> I/D/R
> I/D/R

>=
<=
>
<
nn
nn
nn

CALCULATE
ADD
SUB
MUL
DIV

nn
+
*
/
MOD
NEGI, NEGD
INVI, INVD

nn
+
*
/

NEG
INC
DEC

nn
nn
nn
nn

ABS

Page 10

S7-400

S7-1500

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Get minimum
Get maximum
Set limit value
Form square
Form square root
Form natural logarithm
Form exponential value
Form sine value
Form cosine value
Form tangent value
Form arcsine value
Form arccosine value
Form arctangent value
Return fraction
Exponentiate
VARIANT instructions
Comparator operations
Check data type of a VARIANT tag
Check element data type of a VARIANT tag

A5E33285102-AA

Communication

Technology
LAD / FBD

STL
(not S7-1200)

SCL

MIN
MAX
LIMIT
SQR
SQRT
LN
EXP
SIN
COS
TAN
ASIN
ACOS
ATAN
FRAC
EXPT

**

FRAC
**

TypeOf
TypeOf
TypeOfElements TypeOfElements

Page 11

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Compare data type for EQUAL with a specific


data type
Compare data type for UNEQUAL with the
data type of a tag
Compare element data type for EQUAL with
the data type of a tag
Compare element data type for UNEQUAL
with the data type of a tag
Compare for EQUALS ZERO
Compare for UNEQUALS ZERO
Check for ARRAY
Move operations
Read out VARIANT tag value
Write VARIANT tag value
Get number of ARRAY elements
Move block
Conversion operations
Convert VARIANT to DB_ANY
Convert DB_ANY to VARIANT

A5E33284667-AA

Technology
LAD / FBD

Communication
STL
(not S7-1200)

SCL

EQ_Type

nn

NE_Type

nn

EQ_ElemType

nn

NE_ElemType

nn

IS_NULL
NOT_NULL
IS_ARRAY

nn
nn

VariantGet
VariantPut
CountOfElements
MOVE_BLK_VARIANT
VARIANT_TO_DB_ANY
DB_ANY_TO_VARIANT

Page 12

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

() ()

Extended instructions
Description

Array-DB instructions
Read from array data block
Write to array data block
Read from array data block in load memory
Write to array data block in load memory
Move operations
Move value
S7-300/400: LAD and FBD only
Move data type from ARRAY of BYTE
(Deserialize)
Move data type to ARRAY of BYTE
(Serialize)
Read field
Recommendation: indexed access to an array
Write field
Recommendation: indexed access to an array
Move block
Move block uninterruptible
Fill block
Fill block uninterruptible

A5E33285102-AA

Communication

Technology

STL
(not S7-1200)

LAD / FBD

SCL

ReadFromArrayDB
WriteToArrayDB
ReadFromArrayDBL
WriteToArrayDBL
MOVE

:=
Deserialize
Serialize

FieldRead
FieldWrite
MOVE_BLK
UMOVE_BLK
FILL_BLK
UFILL_BLK

Page 13

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Swap
Read/write access
Recommendation: program symbolically
Read data in little-endian format
Write data in little-endian format
Read data in big-endian format
Write data in big-endian format
Read memory address
Read memory bit
Write memory address
Write memory bit
Write memory area

A5E33284667-AA

Technology
LAD / FBD

Communication
STL
(not S7-1200)

SCL

SWAP
ReadLittle
WriteLittle
ReadBig
WriteBig
PEEK
PEEK_BOOL
POKE
POKE_BOOL
POKE_BLK

Page 14

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Additional instructions
Recommendation: program symbolically
Move block
Move block uninterruptible
Fill block
Conversion operations
Convert value
S7-1200/1500: is performed implicitly, so
usually unnecessary.
Round numerical value
Generate next higher integer from floatingpoint number
Generate next lower integer from floatingpoint number
Truncate numerical value
Scale
S7-1200: FBD, LAD and SCL only
Normalize
S7-1200: FBD, LAD and SCL only

A5E33285102-AA

Communication

Technology
LAD / FBD

STL
(not S7-1200)

SCL

BLKMOV
UBLKMOV
FILL
CONV

CONVERT

ROUND
CEIL

RND
RND+

ROUND
CEIL

FLOOR

RND-

FLOOR

TRUNC
SCALE_X
NORM_X

Page 15

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Convert a integer to a floating-point number


that will be scaled in physical units between a
low and a high limit value (scaling).
Unscale a floating-point number in physical
units between a low and a high limit value and
convert to an integer (unscale).
Convert BCD to integer (16 bit)
Convert integer (16 bit) to BCD
Convert BCD to integer (32 bit)
Convert integer (32 bit) to BCD
Convert integer (16 bit) to integer (32 bit)
S7-1500: The conversion is also performed
implicitly
Convert integer (32 bit) to floating-point
number
S7-1500: The conversion is also performed
implicitly
Create ones complement integer (16 bit)
S7-1500: The conversion is also performed
implicitly

A5E33284667-AA

Technology
LAD / FBD

Communication
STL
(not S7-1200)

SCL

SCALE

UNSCALE

nn
nn
nn
nn
nn

BTI
ITB
BTD
DTB
ITD

BCD16_TO_INT
INT_TO_BCD16
BCD32_TO_INT
DINT_TO_BCD32
INT_TO_DINT

nn

DTR

DINT_TO_REAL

nn

INVI

nn

Page 16

S7-1500

S7-400

Extended instructions

S7-300

S7-1200

Basic instructions

Create ones complement double integer (32


bit)
S7-1500: The conversion is also performed
implicitly
Negate integer (16 bit)
Negate integer (32 bit)
Negate floating-point number
Switch bytes in the right word of
accumulator 1
Switch all bytes in accumulator 1
Program control operations
Run conditionally
Branch conditionally

Branch conditionally multiple times

Create multiway branch, execute conditionally


Run in counting loop
Run in counting loop with step width

A5E33285102-AA

Description

Communication

Technology
LAD / FBD

STL
(not S7-1200)

SCL

nn

INVD

nn

nn
nn
nn
nn

NEGI
NEGD
NEGR
CAW

nn
nn
nn
nn

nn

CAD

nn
IF THEN
IF THEN
ELSE
IF THEN
ELSIF
CASE OF
FOR TO DO
FOR TO BY
DO

Page 17

S7-400

S7-1200

Extended instructions

S7-300

S7-1500

Basic instructions

Run if condition is met


Run if condition is not met

Description

Recheck loop condition


Exit loop immediately
Exit block
Conditional block end
Inserting a comment section
Jumps
Jump
Jump if RLO = 1
Jump if RLO = 0
Jump label
Define jump list
Jump distributor
Return
Unconditional jump
Jump if RLO = 1 and save RLO
Jump if RLO = 0 and save RLO
Jump if BR = 1

A5E33284667-AA

Technology
LAD / FBD

Communication
STL
(not S7-1200)

RET

BEU
BEC
//

-(JMP)
-[JMP]
-(JMPN) -[JMPN]
LABEL
JMP_LIST
SWITCH
-(RET)
-[RET]

JC
JCN
:
JL

nn
nn
nn

JU
JCB
JNB
JBI

SCL
WHILE DO
REPEAT
UNTIL
CONTINUE
EXIT
RETURN
nn
//, (**)
GOTO
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn

Page 18

S7-400

S7-1500

S7-300

S7-1200

Basic instructions

Extended instructions

Communication

Technology

Description

LAD / FBD

STL
(not S7-1200)

SCL

Jump if BR = 0
Jump if OV = 1
Jump if OS = 1
Jump if the result is zero
Jump if the result is not zero
Jump if the result is greater than zero
Jump if the result is less than zero
Jump if the result is greater than or equal to
zero
Jump if the result is less than or equal to zero
Jump if the result is invalid
Loop
Data blocks
Open data block in DB register
LAD / FBD: only with S7-300/400
Open data block in DI register
LAD / FBD: only with S7-300/400
Swap data block register
Load the length of a global data block into
accumulator 1

nn
nn
nn
nn
nn
nn
nn
nn

JNBI
JO
JOS
JZ
JN
JP
JM
JPZ

nn
nn
nn
nn
nn
nn
nn
nn

nn
nn
nn

JMZ
JUO
LOOP

nn
nn
nn

OPN

OPN DBx

nn

OPNi

OPN DIx

nn

CDB
L DBLG

nn
nn

A5E33285102-AA

Page 19

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Load the number of a global data block into


accumulator 1
Load the length of an instance data block into
accumulator 1
Load the number of an instance data block
into accumulator 1
Code blocks
Call block

LAD / FBD: only with S7-300/400


Conditional block call
Unconditional block call
Runtime control
Limit and enable password legitimation
Restart cycle monitoring time
Exit program
Get error locally
Get error ID locally
Initialize all retain data
Configure time delay

A5E33284667-AA

Technology
LAD / FBD

Communication
STL
(not S7-1200)

SCL

L DBNO

nn

L DILG

nn

L DINO

nn

CALL

nn

CC
UC

nn
nn

ENDIS_PW
RE_TRIGR
STP
GET_ERROR
GET_ERR_ID
INIT_RD
WAIT

Page 20

S7-400

S7-1500

S7-300

S7-1200

Basic instructions

Extended instructions
Description

Change protection level


Measure program runtime
LAD and FBD: new
Word logic operations
Create ones complement
Decode
Encode
Select
Multiplex
S7-300/400: SCL only
Demultiplex
AND logic operation word by word
OR logic operation word by word
EXCLUSIVE OR logic operation word by word
AND logic operation double word by double
word
OR logic operation double word by double
word
EXCLUSIVE OR logic operation double word
by double word

A5E33285102-AA

Communication

Technology
LAD / FBD

STL
(not S7-1200)

SCL

PROTECT
RUNTIME

INV

nn
DECO
ENCO
SEL
MUX

AND
OR
XOR
AND

DEMUX
AW
OW
XOW
AD

AND, &
OR
XOR
AND, &

OR

OD

OR

XOR

XOD

XOR

Page 21

S7-400

S7-1500

()
()

S7-300

S7-1200

Basic instructions

Extended instructions
Description

Shift and rotate instructions


Rotate right
Rotate left
Shift right word by word
Shift left word by word
Shift word by word with sign
Shift double word by double word with sign
Shift right double word by double word
Shift left double word by double word
Rotate right double word by double word
Rotate left double word by double word
Rotate left by status bit CC 1
Rotate right by status bit CC 1
Load and transfer the registers in STL
Load
Load
Load status word in accumulator 1
Load AR1 with contents of accumulator 1
Load AR1 with double word or area pointer
Load AR1 with contents of AR2

A5E33284667-AA

Technology
LAD / FBD

SHR
SHL

SHR
SHL

nn

Communication
STL
(not S7-1200)

SCL

ROR
ROL
SRW
SLW
SSI
SSD
SRD
SLD
RRD
RLD
RLDA
RRDA

SHR
SHL
nn
nn
nn
nn
SHR
SHL
nn
nn

L
L STW
LAR1
LAR1 <D>
LAR1 AR2

nn
nn
nn
nn
nn

Page 22

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Load AR2 with contents of accumulator 1


Load AR2 with double word or area pointer
Transfer
Transfer
Transfer accumulator 1 to status word
Switch AR1 and AR2
Transfer AR1 to accumulator 1
Transfer AR1 to double word
Transfer AR1 to AR2
Transfer AR2to accumulator 1
Transfer AR2 to double word
Additional instructions
Implement sequencer
Implement sequencer
Discrete control-timer alarm
Motor control-timer alarm
Compare input bits with the bits of a mask
Compare scan matrix
Lead and lag algorithm
Create bit pattern for seven-segment display

A5E33285102-AA

Technology
LAD / FBD

nn

Communication
STL
(not S7-1200)

SCL

LAR2
LAR2 <D>

nn
nn

T
T STW
CAR
TAR1
TAR1 <D>
TAR1 AR2
TAR2
TAR2 <D>

nn
nn
nn
nn
nn
nn
nn
nn

DRUM
DRUM_X
DCAT
MCAT
IMC
SMC
LEAD_LAG
SEG

Page 23

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Create tens complement


Count number of set bits
Time accumulator
Save data to shift register
Shift bit to shift register
Get status bit
Call block
Save RLO in BR bit
Open MCR ranges
Close MCR ranges
Enable MCR range
Disable MCR range
Set bit array
Set byte array
Reset bit array
Reset byte array
Enter substitute value
Swap content of accumulators 1 and 2
Shift content to the next higher accumulator
Shift content to the next lower accumulator

A5E33284667-AA

Technology
LAD / FBD

Status -||-(CALL) -[CALL]


-(SAVE) -[SAVE]
-(MCR<) -[MCR<]
-(MCR>) -[MCR>]
-(MCRA) -[MCRA]
-(MCRD) -[MCRD]

nn
nn
nn

Communication
STL
(not S7-1200)
BCDCPL
BITSUM
TONR_X
WSR
SHRB
A 0V
UC
SAVE
MCR(
)MCR
MCRA
MCRD
SET
SETI
RESET
RESETI
REPL_VAL
TAK
PUSH
POP

SCL

nn
nn
nn
nn
nn
nn
nn

nn
nn
nn

Page 24

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Add accumulator 1 to AR1


Add accumulator 1 to AR2
Program display (null instruction)
Null instruction
Null instruction

A5E33285102-AA

Communication

Technology
LAD / FBD

STL
(not S7-1200)

SCL

nn
nn
nn
nn
nn

+AR1
+AR2
BLD
NOP 0
NOP 1

nn
nn
nn
nn
nn

Page 25

Basic instructions

Extended instructions

Communication

Technology

Instructions in the section "Advanced instructions"


Instruction groups

Page

Instruction groups

Page

Instruction groups

Page

Recipes & data logging

36

String + char

28

Interrupts

32

Data block functions

37

Process image

29

Alarms

34

Table functions

37

Distributed I/O

30

Diagnostics

36

Addressing

38

PROFIenergy

31

Pulse

36

Additional instructions

39

S7-1500

32

S7-1200

Module parameter assignment

S7-400

26

S7-300

Date and time

Description

Date and time


Compare time tags
Convert times and extract
Add times
Subtract times
Time difference
Combine times

LAD / FBD

STL
(not S7-1200)

SCL

T_COMP*
T_CONV*
T_ADD*
T_SUB*
T_DIFF*
T_COMBINE*

* SCL: Use conversion functions x_TO_y (z. B. TIME_TO_DINT) or comparator and math functions (e.g. +, -, >, <).

A5E33285102-AA

Page 26

Basic instructions

A5E33285102-AA

Extended instructions

Time-of-day functions
Set time-of-day
Read time-of-day
Read local time
Write local time
Synchronize slave clocks
Read system time
Set time zone
Runtime meters
Set runtime meters
Start and stop runtime meters
Read runtime meters
Set time-of-day and time-of-day status
Synchronize slave clocks
Local time
Calculate local time
Calculate local time from base time
Calculate base time from local time
Set time-of-day interrupt using local time
Set daylight saving time/standard time
without time-of-day status
Transfer time-stamped alarms
Set daylight saving time/standard time with
time-of-day status

Technology

Communication
WR_SYS_T
RD_SYS_T
RD_LOC_T
WR_LOC_T
SNC_RTCB
TIME_TCK
SET_TIMEZONE
RTM
SET_RTM
CTRL_RTM
READ_RTM
SET_CLKS
SNC_RTCB
LOC_TIME
BT_LT
LT_BT
S_LTINT
SET_SW
TIMESTMP
SET_SW_S

Page 27

Basic instructions

A5E33284667-AA

Extended instructions

String + char
Convert several strings organized as an
array or PLC data type into one char array
with separators
Convert a char array into several strings
organized as an array or PLC data type
Move character string
Compare character strings
Convert character string
Convert character string to numerical value
Convert numerical value to character string
Convert character string to Array of CHAR
Convert Array of CHAR to character string
Determine the maximum length of a
character string
Convert ASCII string to hexadecimal
number (conversion is included in the
conversion functions, e.g.
CHAR_TO_WORD)
Convert hexadecimal number to ASCII
string

Technology

Communication
JOIN

SPLIT
S_MOVE
S_COMP

:=
=
S_CONV

STRG_VAL
VAL_STRG

STRG_...
_STRG
Strg_TO_Chars
Chars_TO_Strg
MAX_LEN
ATH

HTA

Page 28

Basic instructions

A5E33285102-AA

Extended instructions

Additional instructions
Determine the length of a character string
Combine character strings
Read the left characters of a character string
Read the right characters of a character
string
Read the middle characters of a character
string
Delete characters in a character string
Insert characters in a character string
Replace characters in a character string
Find characters in a character string
Read out name of a tag in the input
parameter
Read out name of the block instance
Read out name of the block
Process image
Update the process image inputs
Update the process image outputs
Synchronize the process image inputs
Synchronize the process image outputs

Communication

Technology
LEN
CONCAT
LEFT
RIGHT
MID

DELETE
INSERT
REPLACE
FIND
GetSymbolName
GetInstanceName
GetBlockName
UPDAT_PI
UPDAT_PO
SYNC_PI
SYNC_PO

Page 29

Basic instructions

A5E33284667-AA

Extended instructions

Distributed I/O
DP & PROFINET
Read data record
Write data record
Read process image
Transfer process image
Read process image area
Transfer process image area
Receive interrupt
Enable/disable DP slaves
Additional instructions
Read data record from I/O
Write data record to I/O
Read consistent data of a DP standard
slave
Write consistent data of a DP standard slave
iDevice / iSlave
Receive data record
Make data record available
Send interrupt

Technology

Communication

RDREC
WRREC
GETIO
SETIO
GETIO_PART
SETIO_PART
RALRM
D_ACT_DP
RD_REC
WR_REC
DPRD_DAT
DPWR_DAT
RCVREC
PRVREC
SALRM

Page 30

Basic instructions

Extended instructions

PROFIBUS
Trigger hardware interrupt from DP standard
slave
Synchronize DP slaves / Freeze inputs
Read diagnostics data from a DP slave
Determine topology for DP master system

ASi

Control ASi master behavior


Control ASi master behavior
PROFIenergy
IO controller
Start and exit energy-saving mode
Start and exit energy-saving mode / Read
out status information
Set the switching response of the power
modules
Start and exit energy-saving mode using
WakeOnLan
iDevice / iSlave
Control PROFIenergy commands in the IDevice
Generate negative answer to command
Generate answer to command at start of
pause

A5E33285102-AA

Communication

Technology

DP_PRAL
DPSYC_FR
DPNRM_DG
DP_TOPOL
ASi_3422
ASI_CTRL

PE_START_END
PE_CMD
PE_DS3_WRITE_ET200S
PE_WOL

PE_I_DEV
PE_Error_RSP
PE_Start_RSP

Page 31

Basic instructions

Extended instructions

Generate answer to command at end of


pause
Generate queried energy savings modes as
answer
Generate queried energy data as answer
Generate PEM status as answer
Generate number of PROFIenergy
commands as answer
Generate list of supported measured values
as answer
Generate queried measured values as
answer
Module parameter assignment
Read module data record
Read module data record asynchronously
Transfer module data records
Read data record from configured system
data
Write module data record
Transfer data record
Interrupts
Attach an OB to an interrupt event
Detach an OB from an interrupt event

A5E33284667-AA

Technology

Communication
PE_End_RSP

PE_List_Modes_RSP
PE_Get_Mode_RSP
PE_PEM_Status_RSP
PE_Identify_RSP
PE_Measurement_List_RSP
PE_Measurement_Value_RSP

RD_DPAR
RD_DPARA
PARM_MOD
RD_DPARM
WR_PARM
WR_DPARM
ATTACH
DETACH

Page 32

Basic instructions

A5E33285102-AA

Extended instructions

Cyclic interrupt
Set cyclic interrupt parameters
Query cyclic interrupt parameters
Time-of-day interrupt
Set time-of-day interrupt
Set time-of-day interrupt
Cancel time-of-day interrupt
Enable time-of-day interrupt
Query status of time-of-day interrupt
Time-delay interrupt
Start time-delay interrupt
Cancel time-delay interrupt
Query time-delay interrupt status
Synchronous error events
Mask synchronous error events
Unmask synchronous error events
Read out event status register
Asynchronous error event
Disable interrupt event
Enable interrupt event
Delay execution of higher priority interrupts
and asynchronous error events

Technology

Communication
SET_CINT
QRY_CINT
SET_TINT
SET_TINTL
CAN_TINT
ACT_TINT
QRY_TINT
SRT_DINT
CAN_DINT
QRY_DINT
MSK_FLT
DMSK_FLT
READ_ERR
DIS_IRT
EN_IRT
DIS_AIRT

Page 33

Basic instructions

Extended instructions

Enable execution of higher priority


interrupts and asynchronous error events
Trigger multicomputing interrupt
Alarms
Generate program alarm with associated
values
Get alarm status
Generate user diagnostics alarm that will be
entered in the diagnostics buffer.
Generate alarm message
S stands for short, this function was
replaced by D
Generate alarm message with
acknowledgment
Create permanently acknowledged PLC
alarms
D stands for Diagnostics (can be diagnosed)
or also for Delete (deletable)
Create acknowledgeable PLC alarms
D stands for Diagnostics (can be diagnosed)
or also for Delete (deletable)
Determine the acknowledgment status of
the last ALARM_SQ incoming alarm
S stands for short and C for check

A5E33284667-AA

Technology

Communication
EN_AIRT
MP_ALM
Program_Alarm
Get_AlarmState
Gen_UsrMsg
ALARM_S

ALARM_SQ
ALARM_D

ALARM_DQ

ALARM_SC

Page 34

Basic instructions

A5E33285102-AA

Extended instructions

Write a user diagnostics event to the


diagnostics buffer
Write user message
Report up to eight signal changes
P stands for process (associated values)
Create PLC alarms without associated
values for eight signals
Create PLC alarms with associated values
for eight signals
P stands for process (associated values)
Report a signal change
Create PLC alarms with acknowledgment
display
Send archive data
Additional instructions
Read out dynamically assigned system
resources
Delete dynamically assigned system
resources
Enable PLC alarms
Disable PLC alarms

Communication

Technology

WR_USMSG

NOTIFY_8P
ALARM_8
ALARM_8P

NOTIFY
ALARM
AR_SEND
READ_SI
DEL_SI
EN_MSG
DIS_MSG

Page 35

Basic instructions

Extended instructions

Diagnostics
Read current OB start information
Read out runtime statistics
Determine OB program runtime
Determine current connection status
Read system status list
Read LED status
Read out name of a module
Read out information of an IO device
Read module status information of an IO
system
Read module status information of a module
Generate diagnostics information
Read diagnostics information
Read identification data and maintenance
data
Pulse
Pulse width modulation
Recipes & data logging
Recipe functions
Export recipe
Import recipe

A5E33284667-AA

Technology

Communication
RD_SINFO
RT_INFO
OB_RT
C_DIAG
RDSYSST
LED
Get_Name
GetStationInfo
DeviceStates
ModuleStates
GEN_DIAG
GET_DIAG
Get_IM_Data

CTRL_PWM

RecipeExport
RecipeImport

Page 36

Basic instructions

A5E33285102-AA

Extended instructions

Data logging
Create data log
Open data log
Write data log
Empty data log
Close data log
Delete data log
Data log in new file
Data block functions
Create data block
Create data block
Create data block in the load memory
Read from data block in the load memory
Write to data block in the load memory
Read data block attributes
Delete data block
Delete data block
Test data block
Table functions
Add value to table
Output first value of the table
Find value in table
Output last value of the table
Execute table instruction

Technology

Communication
DataLogCreate
DataLogOpen
DataLogWrite
DataLogClear
DataLogClose
DataLogDelete
DataLogNewFile
CREAT_DB
CREATE_DB
CREA_DBL
READ_DBL
WRIT_DBL
ATTR_DB
DEL_DB
DELETE_DB
TEST_DB
ATT
FIFO
TBL_FIND
LIFO
TBL

Page 37

Basic instructions

A5E33284667-AA

Extended instructions

Copy value from table


Link value logically with table element and
save
Calculate standard deviation
Correlated data tables
Link tables
Collect/distribute table data
Addressing
Determine the hardware ID from the slot
Determine the slot from the hardware ID
From the addressing of STEP 7 V5.5 SPx,
determine the hardware ID
Determine the hardware ID from an IO
address
Determine the IO addresses from the
hardware ID

Technology

Communication
TBL_WRD
WRD_TBL
DEV
CDT
TBL_TBL
PACK
GEO2LOG
LOG2GEO
LOG2MOD
IO2MOD
RD_ADDR

Page 38

Basic instructions

A5E33285102-AA

Extended instructions

Additional instructions
Determine start address of a module
Determine the module slot belonging to a
logical address
Determine the IO addresses from the
hardware ID
Determine logical start address of a module
Determine the slot belonging to a logical
address
S7-1500: only exists to provide compatibility
- not recommended
Additional instructions
iSlave
Set network address as own iSlave

Technology

Communication
GEO_LOG
LOG_GEO
RD_LGADR
GADR_LGC
LGC_GADR

SET_ADDR

Page 39

Basic instructions

A5E33284667-AA

Extended instructions

Technology

Communication

Page 40

Basic instructions

Extended instructions

Technology

Communication

Instructions in the section "Technology"


Instruction groups

Page

Instruction groups

Page

PID cntrol compact PID

41

S7-300C functions

43

S7-1500

43

S7-400

Function modules

S7-1200

41

S7-300

Counting (and measuring)

Description

Counting (and measuring)


Control fast counters
Fast counter for counting, measuring and
position detection
PID control
Compact PID
Universal PID controller with integrated
optimization
PID controller with integrated optimization for
valves

A5E33285102-AA

LAD / FBD

Instruction groups

Page

Motion control

STL
(not S7-1200)

43

SCL

CTRL_HSC
High_Speed_Counter

PID_Compact
PID_3Step

Page 41

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

PID basic functions


Continuous controller
Step controller for integrating actuators
Pulse generator for proportional actuators
Continuous temperature controller with pulse
generator
Temperature controller for integrating actuators
Automatic optimization for a continuous
controller
Automatic optimization for a step controller
Integrated system functions
Continuous controller
Step controller for integrating actuators
Pulse generator for proportional actuators

A5E33284667-AA

Technology
LAD / FBD

Communication
STL
(not S7-1200)

SCL

CONT_C
CONT_S
PULSEGEN
TCONT_CP
TCONT_S
TUN_EC
TUN_ES
CONT_C_SF
CONT_S_SF
PULSGEN_SF

Page 42

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Function modules
Various instructions FM modules counting /
positioning / cam control / PID control /
temperature control
S7-300C functions
Position with analog output
Position with digital output
Control counter
Control frequency measurement
Control pulse width modulation
Motion control
S7-1x00 motion control
Enable axis
Acknowledge error
Reference axis
Stop axis
Move axis to absolute position
Move axis to relative position

A5E33285102-AA

Technology
LAD / FBD

Communication
STL
(not S7-1200)

SCL

ANALOG
DIGITAL
COUNT
FREQUENC
Pulse

MC_Power
MC_Reset
MC_Home
MC_Halt
MC_MoveAbsolute
MC_MoveRelative

Page 43

S7-1500

S7-400

S7-1200

S7-300

Basic instructions

Extended instructions
Description

Traverse axis at set velocity


Traverse axis in jog mode
Execute axis jobs as motion sequence
Change dynamic settings of the axis

A5E33284667-AA

Technology
LAD / FBD

Communication
STL
(not S7-1200)

SCL

MC_MoveVelocity
MC_MoveJog
MC_CommandTable
MC_ChangeDynamic

Page 44

Basic instructions

Extended instructions

Technology

Communication

Instructions in the section "Communication"


Instruction groups

Page

Instruction groups

Page

Instruction groups

Page

PROFINET CBA

55

Open User Communication

46

S7-300C functions

54

MPI communication

55

WEB server

47

Communication with iSlave

55

TeleService

56

Modbus TCP

47

/iDevice

S7-1500

48

S7-400

Communications processors

S7-1200

45

S7-300

S7 communication

Description
S7 communication
Read data from a remote CPU
Write data to a remote CPU
Send data uncoordinated
Receive data uncoordinated
Send data in segments
Receive data in segments
Query connection status

A5E33285102-AA

LAD / FBD

STL
(not S7-1200)

SCL

GET
PUT
USEND
URCV
BSEND
BRCV
C_CNTRL

Page 45

Basic instructions

Extended instructions

Additional instructions

Read data from a remote CPU


Write data to a remote CPU
Send data uncoordinated
Receive data uncoordinated
Open User Communication
Note the differences between the S7-1200
and S7-1500, refer to the manual
Manage the communications connection and
send data via Ethernet
Manage the communications connection and
receive data via Ethernet
Manage the communications connection and
transfer e-mail
Establish communications connection
Terminate communications connection
Send data via communications connection
Receive data via communications connection
Reset connection
Check connection
Configure interface
Configure interface

A5E33284667-AA

Technology

Communication

Note: S stands for short,


because only one parameter is possible
GET_S
PUT_S
USEND_S
URCV_S

TSEND_C
TRCV_C
TMAIL_C
TCON
TDISCON
TSEND
TRCV
T_RESET
T_DIAG
T_CONFIG
IP_CONFIG

Page 46

Basic instructions

Extended instructions

Additional instructions
Send data via Ethernet (UDP)
Receive data via Ethernet (UDP)
Change IP configuration parameters
Exchange data using FETCH and WRITE via
TCP
Exchange data using FETCH and WRITE via
ISO-on-TCP
WEB server
Synchronize user-defined Web pages
Modbus TCP
Communicate as Modbus TCP client via
PROFINET
Communicate as Modbus TCP server via
PROFINET
Establish communication between a CPU with
an integrated PN interface and a partner that
supports the Modbus/TCP protocol.
Connection management
Communicate as Modbus TCP client via
Ethernet
Communicate as Modbus TCP server via
Ethernet

A5E33285102-AA

Technology

Communication
TUSEND
TURCV
IP_CONF
FW_TCP
FW_IOT

WWW
MB_CLIENT
MB_SERVER
MODBUSPN

TCP_COMM
MOD_CLI
MOD_SRV

Page 47

Basic instructions

Extended instructions

Communications processors
Point-to-point or PtP communication
S7-300/400: Commands for ET200SP CM PtP
Configured communications parameters
dynamically
Configure PtP communications port
S7-300/400: only when using an ET200SP
CM PtP
Configure serial transmission parameters
dynamically
Configure PtP sender
Configure serial receive parameters
dynamically
Configure PtP recipient
Configure protocol
Transfer data of the send buffer
Send data
Enable receipt of messages
Receive data
Delete receive buffer
Delete receive buffer
Query RS-232 signals
Read status
Set RS-232 signals

A5E33284667-AA

Technology

Communication

PORT_CFG
Port_Config

SEND_CFG
Send_Config
RCV_CFG
Receive_Config
P3964_Config
SEND_PTP
Send_P2P
RCV_PTP
Receive_P2P
RCV_RST
Receive_Reset
SGN_GET
Signal_Get
SGN_SET

Page 48

Basic instructions

Extended instructions

Set accompanying signals


Get extended functions
Set extended functions
USS communication
S7-300/400: Commands for ET200SP CM
PtP
Edit communication via USS network
Communication by means of a USS network
Prepare and display data for the drive
Data exchange with the drive
Read out parameters from the drive
Read data from drive
Change parameters in the drive
Change data in drive
MODBUS (RTU)
S7-300/400: Commands for ET200SP CM
PtP
Configure port on the PtP module for Modbus
RTU
Configure communications module for
Modbus
Communicate as Modbus master via PtP port
Communicate as Modbus master
Communicate as Modbus slave via PtP port
Communicate as Modbus slave

A5E33285102-AA

Technology

Communication
Signal_Set
Get_Features
Set_Features

USS_PORT
USS_Port_Scan
USS_Drive
USS_Drive_Control
USS_RPM
USS_Read_Param
USS_WPM
USS_Write_Param

MB_COMM_LOAD
Modbus_Comm_Load
MB_MASTER
Modbus_Master
MB_SLAVE
Modbus_Slave

Page 49

Basic instructions

Extended instructions

PtP link: CP 340


Receive data
Send data
Output message text with up to 4 tags on
printer
Delete receive buffer
Read accompanying signals on the RS-232C
interface
Read accompanying signals on the RS-232C
interface
PtP link: CP 341
Receive data or make data available
Send or fetch data
Output message text with up to 4 tags on
printer
Read accompanying signals on the RS-232C
interface
Write accompanying signals on the RS-232C
interface
PtP link: CP 440
Receive data
Send data
Delete receive buffer

A5E33284667-AA

Technology

Communication
P_RCV
P_SEND
P_PRINT
P_REST
V24_STAT_340
V24_SET_340

P_RCV_RK
P_SND_RK
P_PRT341
V24_STAT
V24_SET

RECV_440
SEND_440
RES_RECV

Page 50

Basic instructions

Extended instructions

PtP link: CP 441


Read accompanying signals on the RS-232C
interface
Write accompanying signals on the RS-232C
interface
MODBUS slave (RTU)
Modbus slave instruction for CP 341
Modbus slave instruction for CP 441
MODBUS: CP 443
Establish communication between
a CP and a partner that supports the
OPEN MODBUS/TCP protocol
Communicate as Modbus client
Communicate as Modbus server
ET 200S serial interface
Receive data
Send data
Read accompanying signals on the RS-232C
interface
Write accompanying signals on the RS-232C
interface
Set data flow control using XON/XOFF

A5E33285102-AA

Technology

Communication
V24_STAT_441
V24_SET_441

MODB_341
MODB_441
MODBUSCP

MB_CPCLI
MB_CPSRV
Note: S stands for serial
S_RCV
S_SEND
S_VSTAT
S_VSET
S_XON

Page 51

Basic instructions

Extended instructions

Set data flow control using RTS/CTS


Set data flow control using auto. control of the
RS-232C accompanying signals
Modbus slave instruction for ET 200S 1SI
Send data to a USS slave
Receive data from a USS slave
Initialize USS
SIMATIC NET CP
Open User Communication
Transfers data to the CP for transmission via
a configured connection
Transfers jobs to the CP to accept received
data
Blocks the data exchange via a connection
using FETCH/WRITE
Diagnostics of connections
Diagnostics of connections
Connection diagnostics, connection
establishment, ping request
PROFIBUS DP
Data transfer to the CP as DP master or DP
slave
Receipt of data from the CP as DP master or
DP slave

A5E33284667-AA

Technology

Communication
S_RTS
S_V24
S_MODB
S_USST
S_USSR
S_USSI

AG_SEND
AG_RECV
AG_LOCK
AG_UNLOCK
AG_CNTRL
AG_CNTEX

DP_SEND
DP_RECV

Page 52

Basic instructions

Extended instructions

Request for diagnostics information


Transfer of control information to the
PROFIBUS CP
PROFINET IO
Data transfer to the CP as IO controller or IO
device
Receipt of data from the CP as IO controller
or IO device
Read data record or write data record in the
IO controller
Alarm evaluation by the CP 343-1 as IO
controller
PROFIenergy
Start or end the energy-saving pause
Extended starting or ending of the energysaving pause
Handling of the commands of the IO controller
in the PROFIenergy device
Transfer of the switch setting of power
modules to ET 200S

A5E33285102-AA

Technology

Communication
DP_DIAG
DP_CTRL

PNIO_SEND
PNIO_RECV
PNIO_RW_REC
PNIO_ALARM

PE_START_END_CP
PE_CMD_CP
PE_I_DEV_CP
PE_DS3_Write_ET200_CP

Page 53

Basic instructions

Extended instructions

Additional instructions
Use of a logical trigger for ERPC
communication
Setup of FTP connections from and to an FTP
server
GPRSComm:CP 1242-7
Establish connection via the GSM network
Terminate connection via the GSM network
Send data via the GSM network
Receive data via the GSM network
Transfer configuration data to CP
S7-300C functions
ASCII, 3964
Send data (ASCII, 3964)
Receive data (ASCII, 3964)
Reset input buffer
(ASCII, 3964)
RK 512
Send data (RK 512)
Fetch data (RK 512)
Receive data and make available
(RK 512)

A5E33284667-AA

Technology

Communication

LOGICAL_TRIGGER
FTP_CMD

TC_CON
TC_DISCON
TC_SEND
TC_RECV
TC_CONFIG

SEND_PTP_300C
RCV_PTP_300C
RES_RCVB_300C
SEND_RK_300C
FETCH_RK_300C
SERVE_RK_300C

Page 54

Basic instructions

Extended instructions

Communication with iSlave


Read data of a communications partner within
own S7 station
Write data of a communications partner within
own S7 station
Abort connection to the communications
partner within own S7 station
PROFINET CBA
Update inputs of the user program interface
Update outputs of the user program interface
Break DP interconnections
MPI communication
Send data to communications partner outside
own S7 station
Receive data from communications partner
outside own S7 station
Read data from communications partner
outside own S7 station
Write data to communications partner outside
own S7 station
Abort existing connection to the
communications partner outside own S7
station

A5E33285102-AA

Technology

Communication
I_GET
I_PUT
I_ABORT

PN_IN
PN_OUT
PN_DP
Note: X stands for the MPI interface
X_SEND
X_RCV
X_GET
X_PUT
X_ABORT

Page 55

Basic instructions

Extended instructions

TeleService
Transfer e-mail
Establish remote connection to PG/PC
Establish remote connection to AS
Send SMS message
Transfer e-mail

A5E33284667-AA

Technology

Communication
TM_Mail
PG_DIAL
AS_DIAL
SMS_SEND
AS_MAIL

Page 56

Siemens AG
Industry Sector
Postfach 48 48
90026 Nuremberg
GERMANY
www.siemens.com/automation

Subject to change without prior notice.


A5E33285102-AA
Siemens AG 2014

You might also like