+ All Categories
Home > Documents > 参考手册 SIMATIC - Siemens

参考手册 SIMATIC - Siemens

Date post: 11-Dec-2021
Category:
Upload: others
View: 16 times
Download: 0 times
Share this document with a friend
99
11/2019 参考手册 support.industry.siemens.com SIMATIC S7-300/S7-400/S7-1200/S7-1500 编程语言比较表
Transcript
Page 1: 参考手册 SIMATIC - Siemens

11/2019

参考手册

support.industry.siemens.com

SIMATIC S7-300/S7-400/S7-1200/S7-1500 编程语言比较表

Page 2: 参考手册 SIMATIC - Siemens

针对 S7-300、S7-400、S7-1200、S7-1500 的比较列表参考资料

法律说明警告提示说明本手册包含一些安全提示,请务必遵守以确保人身安全并防止财物损失。三角警告标记为人身安全提示,仅具有财物损失危险时无三角警告标记。如下所示,根据危险级别按降序显示警告提示。

危险

表示如果不采取适当的预防措施,将导致人员死亡或严重的人身伤害。

警告

表示如果不采取适当的预防措施,可能导致人员死亡或严重的人身伤害。

小心表示如果不采取适当的预防措施,可能导致轻微的人身伤害。

注意

表示如果不采取适当的预防措施,可能导致财物损失。

如果出现多个危险级别,应始终遵从最高级别的警告。 如果三角警告标记警告有人身伤害危险,则也可以在同一个警告提示中加入财物损失警告。

A5E36142426-AG 第 1 页

Page 3: 参考手册 SIMATIC - Siemens

有资质的人员在本文档所描述的产品或系统中进行各种作业时,只能由针对该作业的“有资质的人员”进行处理,而且在工作时必须参考相应任务的文档,特别是要遵守其中包含的安全和警告信息。专业人员根据其培训和经验能够识别出操作产品或系统时存在的风险,并避免可能发生的危险。SIMATIC 产品的预期用途请注意以下信息:

警告

西门子产品只能用于其目录和相关技术文档中所规定的用途。若要使用第三方产品和组件,则必须经西门子推荐或事先批准。 只有正确的运输、存储、敷设、装配、安装、调试、操作和维护才能够确保设备正常安全运行。此外还必须遵守规定的运行环境条件。必须遵守相关文档中的提示。

商标所有具有商标权 ® 标记名称都是 Siemens AG 的注册商标。 本文档中使用的其他名称也可能是商标,第三方出于自己的目的使用这些商标可能会侵犯所有者的权利。免责声明我们已经检查了本手册的内容,以确保其与所描述的硬件和软件一致。 但仍不能排除存在差异,因此我们对内容的完整性不承担任何责任。我们会定期检查本出版物中的信息,后续版本中会包含必要的更正。

Siemens AG Digital Industries Postfach 48 48 90026 NÜRNBERG

Page 4: 参考手册 SIMATIC - Siemens

针对 S7 300、S7 400、S7 1200、S7 1500 (11/2019) 的内容比较列表 ● 测量程序运行时间 - 见下方内容 ● 将对象加载到 CPU:对块做了哪些更改,并在何种运行状态下应加载哪些已变更的块到 CPU 中? - 见下一页。 ● 比较列表的概述、前提条件、框架条件和图例(见第 6 页) ● S7-300、S7-400(不带 H 系统)、S7-1200 和包括软件控制器 CPU 150xS 的 S7-1500 的比较列表:

关于哪个控制器系列可使用哪些指令和功能 - 参见第 8 页。 ● SIMATIC Ident 和 SIMATIC Energy Suite 的指令 - 见附录。

测量程序运行时间用户程序各部分的运行时间取决于许多因素。因此不可能以表格形式列出 各个指令的运行时间。使用 RUNTIME 指令(运行时间测量)来测量整个程序、单个块或命令序列的运行时间。运行时间测量从第一次调用 RUNTIME 指令开始,到第二次调用结束。使用优先级 > 15 的组织块进行运行时间测量。这样就可以避免“在线监视”使运行时间失真。 可以在 SIMATIC STEP 7 的在线帮助中找到更多信息。在搜索中输入“RUNTIME”,然后选择有效性验证“S7-1200”、“S7-1500”或“S7-1500T”。

SCL 程序举例:#tempLastCycle := RUNTIME(#statRuntimeMemory); // 运行时间测量启动// 进行时间测量时调用实例:"instSpeedTest"(enable:="true",…);#tempLastCycle := RUNTIME(#statRuntimeMemory); // 运行时间测量结束

变量 #tempLastCycle 中包含了从上次调用 RUNTIME 到当前调用所经过的时间。

A5E36142426-AG 第 3 页

Page 5: 参考手册 SIMATIC - Siemens

将对象加载到 CPU该表显示了对块做了哪些更改,并在何种运行状态下应加载哪些已变更的块。非常复杂的程序会妨碍在 RUN 中的加载过程。

解决方案: ● 请使用足够容量的存储卡。 ● 选择具有足够工作内存的 CPU。 ● 减少使用的已修改块、常量、PLC 变量或数据类型的数量。

可在手册 “SIMATIC 安全 - 组态和编程”中找到有关故障安全块中 F-CPU 行为的信息。

变更和块 S7-300 S7-400 S7-1200 V2.2 - V3.0

S7-1200 V4.0 以上 S7-1500

硬件组件的 已更改属性 STOP STOP,RUN 中

的限制 STOP STOP STOP

已添加的硬件组件 STOP STOP,RUN 中的限制 STOP STOP STOP

新增/更改的文本列表(消息) RUN RUN — — RUN

加载块数 RUN (<17) RUN (<57) RUN (<11) RUN (<21) RUN

重置工作存储器 (MRES) STOP (Reset) STOP (Reset) STOP (Reset) STOP (Reset) STOP (Reset)

新组织块 RUN RUN STOP STOP RUN已更改的组织块:代码更改, 注释更改 RUN RUN RUN RUN RUN

更改属性的组织块 (例如更改周期时间) STOP RUN STOP STOP RUN

已删除的组织块 RUN RUN STOP STOP RUN

新的 FB/FC/DB/ PLC 数据类型 (UDT) RUN RUN RUN RUN RUN

Page 6: 参考手册 SIMATIC - Siemens

变更和块 S7-300 S7-400 S7-1200 V2.2 - V3.0

S7-1200 V4.0 以上 S7-1500

已删除的 FB/FC/DB/ PLC 数据类型 (UDT) RUN RUN RUN RUN RUN已更改的 FB/FC:代码更改, 注释更改 RUN RUN RUN RUN RUN

已更改的 FB/FC:接口 更改 STOP STOP STOP RUN (Init) RUN (Init)

已更改的数据块(未组态预留内存): 已更改变量的名称和类型, 已添加或删除变量

RUN (Init) RUN (Init) STOP RUN (Init) RUN (Init)

已更改的数据块(已 组态预留内存):已添加新的变量 — — — RUN RUN

已更改的 PLC 数据类型 (UDT) STOP STOP STOP RUN (Init) RUN (Init)

已更改的 PLC 变量(添加、删除、已更改名称或数据类型) RUN RUN STOP RUN RUN

更改的保留设置(标志区域,数据库区域) STOP 已保留所有对象 STOP STOP STOP运动控制技术对象:MC-Servo 时序更改,从自由运行更改为循环(以及相反)。更改 TO 的硬件接口 -- -- -- -- STOP

(Init) 表示 CPU 在加载过程中会用起始值覆盖数据块的实际值。

A5E36142426-AG 第 5 页

Page 7: 参考手册 SIMATIC - Siemens

有效性和框架条件 ● SIMATIC STEP 7 版本 16 以上 ● S7-1500 列的内容也适用于 SIMATIC S7-1500 软件控制器 CPU 150xS ● 固件版本 4.4 以上的 SIMATIC S7-1200;SIMATIC S7-1200 仅支持 LAD、SFC 和 SCL。 ● 固件版本 2.8 以上的 SIMATIC S7-1500 ● AWL:必须通过 CALL 调用某些指令。 ● 未考虑 SIMATIC S7-400H 系统的特殊功能。 ● 仅顾及了 SIMATIC S7-300T 控制器的部分指令。 ● 对于 SIMATIC S7-300/400,其系统状态列表 (SZL) 包含了部分与 SIMATIC S7-1200/1500 中的函数调用类似的信息。

Page 8: 参考手册 SIMATIC - Siemens

比较列表概要 ●

经常使用的指令,如位关系运算、时间、计数器和数学函数等 ●

有更多功能的复杂指令,如日期和时间、中断、消息和 PROFIenergy 等 ●

技术功能和运动控制,例如 PID 控制,运动学等 ●

通信的简要概述和基础,以及 通讯指令,如 S7 通信,开放式用户通信等

● 其他指令,例如用于 SINAMICS 或 SIMATIC Ident 的指令

图例✔ 可使用

(✔) 受限使用

☑ 暂不适用于 SIMATIC CPU S7-1500R/Hnn 非必要,例如在 SCL 中可以用简单的命令替换许多指令。

灰色 斜体

我们建议不要使用 S7-1200 或 S7-1500 中的灰色指令。灰色指令不适用于符号寻址或多实例。 避免使用 SIMATIC 计数器和时间,因为它们不具有多实例功能。

Xyz SIMATIC STEP 7 V16 以上版本的新指令。SIMATIC S7-1200 最低要求固件版本 4.4;SIMATIC S7-1500 最低要求固件版本 2.8。

Xyz 也可作为 LAD 和 SFC 中的故障安全安全指令。

简单指令

高级指令

技术指令(技术)

通信指令

可选指令

A5E36142426-AG 第 7 页

Page 9: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信

"简单指令"章节中涉及的指令指令组 页 指令组 页 指令组 页

S7-3

00

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

概述✔ ✔ ✔ ✔ 添加网络 ✔ ✔ nn

✔ ✔ ✔ ✔ 添加空框 ✔ nn nn

✔ ✔ ✔ ✔ 打开分支 ✔ (

✔ ✔ ✔ ✔ 关闭分支 ✔ )

✔ ✔ ✔ ✔ 添加输入 -| nn nn

✔ ✔ ✔ ✔ 反转布尔结果 -|NOT|- -o| NOT

位关系运算✔ ✔ ✔ ✔ 与运算 ✔ & A &

概述 8位关系运算 8安全功能 10时间 11

计数器 14比较器 15数学函数 17移动 19

转换 24程序控制 27字关系运算 33移动与旋转 34

Page 10: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 9 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ ✔ 或操作 ✔ >=1 O OR

✔ ✔ ✔ ✔ 异或操作 ✔ X X XOR

✔ ✔ ✔ ✔ 赋值 -( )- -[=] = :=

✔ ✔ 取反赋值 -(/)- -[/=] NOT

✔ ✔ ✔ ✔ 重置输出 -(R) -[R] R nn

✔ ✔ ✔ ✔ 设置输出 -(S) -[S] S nn

✔ ✔ 设置位段 S7-400:SFC 79 SET SET_BF nn nn

✔ ✔ 重置位段 S7-400:SFC 89 RSET RESET_BF nn nn

✔ ✔ ✔ ✔ 设置/重置触发器 SR nn nn

✔ ✔ ✔ ✔ 重置/设置触发器 RS nn nn

✔ ✔ ✔ ✔ 查询信号正沿上的操作数 -(P)- -|P|- <Operand>; FP; nn

✔ ✔ ✔ ✔ 查询信号负沿上的操作数 -(N)- -|N|- <Operand>; FN; nn

✔ ✔ 设置信号正沿上的操作数 -(P)- -|P|- R_TRIG

Page 11: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ 设置信号负沿上的操作数 -(N)- -|N|- F_TRIG

✔ ✔ ✔ ✔ 查询信号正沿上的布尔结果 P_TRIG FP nn

✔ ✔ ✔ ✔ 查询信号负沿上的布尔结果 N_TRIG FN nn

✔ ✔识别信号正沿 SCL:使用两个指令的编程更为有效: posFlanke := signal and not laststate; laststate := signal;

R_TRIG

✔ ✔识别信号负沿 SCL:使用两个指令的编程更为有效: negFlanke := not signal and not laststate; laststate := not signal;

F_TRIG

✔ ✔ ✔ ✔ 常开触点 -||- nn nn nn

✔ ✔ ✔ ✔ 常闭触点 -|/|- nn nn nn

安全功能✔ ✔ ✔ ✔ 仅安全功能:紧急停止至停止类别 1 ESTOP1

✔ ✔ 仅安全功能:双手监控 TWO_HAND

✔ ✔ ✔ ✔ 仅安全功能:带释放的双手监控 TWO_H_EN

Page 12: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 11 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ 仅安全功能:使用两个或四个静音传感器的并行静音 MUTING

✔ ✔ ✔ ✔ 仅安全功能:使用两个或四个静音传感器的并行静音 MUT_P

✔ ✔ ✔ ✔ 仅安全功能:采用差异分析对两个单通道编码器进行 1oo2 (2v2) 评估 EV1oo2DI

✔ ✔ ✔ ✔ 仅安全功能:反馈回路监控 FDBACK

✔ ✔ ✔ ✔ 仅安全功能:防护门监控。 SFDOOR

✔ ✔ ✔ ✔

仅安全功能:发生通讯错误后或故障安全外设/通道故障后, 对错误进行响应,以同时重新聚合故障安全运行组的 故障安全外设的全部故障安全外设/通道

ACK_GL

时间IEC 时间

✔ ✔ ✔ ✔ 生成脉冲 TP TP

✔ ✔ ✔ ✔ 生成接通延迟 TON TON

✔ ✔ ✔ ✔ 生成关闭延迟 TOF TOF

Page 13: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ 累积时间 TONR

✔ ✔ 累积时间(启动计时器) -(TONR)- -[TONR]- nn nn

✔ ✔ 重置时间 -(RT)- -[RT]- RESET_TIMER

✔ ✔ 加载时间 -(PT)- -[PT]- PRESET_TIMER

✔ ✔ 启动作为脉冲的时间 -(TP)- -[TP]- nn nn

✔ ✔ 启动作为接通延迟的时间 -(TON)- -[TON]- SE nn

✔ ✔ 启动作为关闭延迟的时间 -(TOF)- -[TOF]- SA nn

遗留 SIMATIC 时间

✔ ✔ ✔ 将作为脉冲的时间参数化并启动 S_PULSE nn S_PULSE

✔ ✔ ✔ 将作为延长脉冲的时间参数化并启动 S_PEXT nn S_PEXT

✔ ✔ ✔ 将作为接通延迟的时间参数化并启动 S_ODT nn S_ODT

✔ ✔ ✔ 将作为存储的接通延迟的时间参数化并启动 S_ODTS nn S_ODTS

✔ ✔ ✔ 将作为关闭延迟的时间参数化并启动 S_OFFDT nn S_OFFDT

✔ ✔ ✔ 启动作为脉冲的时间 -(SP) -[SP] SP nn

✔ ✔ ✔ 启动作为延长脉冲的时间 -(SD) -[SD] SD nn

Page 14: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 13 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ 释放时间 FR nn

✔ ✔ ✔ 加载时间值 L nn

✔ ✔ ✔ 以 BCD 格式加载时间值 LC nn

✔ ✔ ✔ 重置时间 -(R) -[R] R nn

✔ ✔ ✔ 启动作为关闭延迟的时间 -(SF) -[SF] SF nn

✔ ✔ ✔ 启动作为接通延迟的时间 -(SD) -{SD] SD nn

✔ ✔ ✔ 启动作为存储的接通延迟的时间 -(SS) -[SS] SS nn

计数器IEC 计数器

✔ ✔ ✔ ✔ 递增计数 CTU CTU

✔ ✔ ✔ ✔ 递减计数 CTD CTD

✔ ✔ ✔ ✔ 递增和递减计数 CTUD CTUD

遗留 SIMATIC 计数器

✔ ✔ ✔ 参数设置和递增计数器 S_CU nn S_CU

✔ ✔ ✔ 参数设置和递减计数器 S_CD nn S_CD

Page 15: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ 参数设置和递增/递减计数 S_CUD nn S_CUD

✔ ✔ ✔ 设置计数器起始值 -(SC) - [SC] nn nn

✔ ✔ ✔ 递增计数 -(CU) -[CU] CU nn

✔ ✔ ✔ 递减计数 -(CD) -[CD] CD nn

✔ ✔ ✔ 释放计数器 FR nn

✔ ✔ ✔ 加载计数值 L nn

✔ ✔ ✔ 以 BCD 格式加载计数值 LC nn

✔ ✔ ✔ 重置计数器 R nn

✔ ✔ ✔ 设置计数器 S nn

比较器✔ ✔ ✔ ✔ 等于 CMP == == I/D/R =

✔ ✔ ✔ ✔ 不等于 CMP <> <> I/D/R <> 

✔ ✔ ✔ ✔ 大于等于 CMP >= >= I/D/R >=

✔ ✔ ✔ ✔ 小于等于 CMP <= <= I/D/R <=

✔ ✔ ✔ ✔ 大于 CMP > > I/D/R > 

Page 16: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 15 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ ✔ 小于 CMP < < I/D/R < 

✔ ✔ 值在区域内 IN_RANGE nn

✔ ✔ 值在区域外 OUT_RANGE nn

✔ ✔ 有效性检查 -|OK|- nn

✔ ✔ 无效性检查 -|NOT_OK|- nn

Variant

✔ ✔ 一个 VARIANT 的数据类型 - 查询变量 TypeOf

✔ ✔ 一个 VARIANT 的 ARRAY 元素数据类型 - 查询变量 TypeOfEle-ments

✔ ✔ 将数据类型与一个变量的数据类型进行“相同性”比较 EQ_Type *)

✔ ✔ 将 ARRAY 元素的数据类型与一个变量的数据类型进行“相同性”比较 EQ_ElemType *)

✔ ✔

使用类型为 DB_ANY 的变量,将一个间接寻址数据块的数据类型与另一个数据类型进行“相同性”比较。 使用 DB_ANY 可以识别任意数据块。这样就可以访问尚未编程的数据块。

EQ_TypeOfDB *)

Page 17: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ 将数据类型与一个变量的数据类型进行“不同性”比较 NE_Type *)

✔ ✔ 将 ARRAY 元素的数据类型与一个变量的数据类型进行“不同性”比较 NE_ElemType *)

✔ ✔使用类型为 DB_ANY 的变量,将一个间接寻址数据块的数据类型与另一个数据类型进行“不同性”比较。

NE_TypeOfDB *)

✔ ✔ 查询“等于零”的指针 IS_NULL *)

✔ ✔ 查询“不等于零”的指针 NOT_NULL *)

*) SCL 应用示例:

IF TypeOf(...) = INT THEN ... // 相当于 EQ _ Type IF TypeOfElements(...) = INT THEN ... // 相当于 EQ _ ElemType IF ... <> NULL THEN ... // 相当于 NOT _ NULL

除了“=”也可也使用其他操作数,例如:“<>”。 除了“INT”还可以使用其他数据类型或已定义的数据类型,例如:“REAL”,“Rezept”。

✔ ✔ 查询 ARRAY IS_ARRAY

✔ 比较结构化数据类型变量 CompType =

Page 18: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 17 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

数学函数

✔ ✔ 计算CALCULATE

(LAD/SFC 中的 SCL 网络)

nn nn

✔ ✔ ✔ ✔ 加 ADD + +

✔ ✔ ✔ ✔ 减 SUB - -

✔ ✔ ✔ ✔ 乘 MUL * *

✔ ✔ ✔ ✔ 除 DIV / /

✔ ✔ ✔ ✔ 取绝对值 安全指令仅用于 S7-1200/1500 ABS ABS ABS

✔ ✔ ✔ ✔ 取余数 MOD

✔ ✔ ✔ ✔ 取二补数 NEG NEGI, NEGD nn

✔ ✔ ✔ ✔ 取一补数 nn INVI, INVD NOT

✔ ✔ ✔ ✔ 递增 INC nn

✔ ✔ ✔ ✔ 递减 DEC nn

Page 19: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ ✔ 取最小值 MIN

✔ ✔ ✔ ✔ 取最大值 MAX

✔ ✔ ✔ ✔ 取极值 LIMIT

✔ ✔ ✔ ✔ 取平方值 SQR

✔ ✔ ✔ ✔ 取平方根 SQRT

✔ ✔ ✔ ✔ 取自然对数 LN

✔ ✔ ✔ ✔ 取指数值 EXP

✔ ✔ ✔ ✔ 取正弦值 SIN

✔ ✔ ✔ ✔ 取余弦值 COS

✔ ✔ ✔ ✔ 取正切值 TAN

✔ ✔ ✔ ✔ 取反正弦值 ASIN

✔ ✔ ✔ ✔ 取反余弦值 ACOS

✔ ✔ ✔ ✔ 取反正切值 ATAN

✔ ✔ 确定小数位 FRAC FRAC

✔ ✔ 乘方 EXPT ** **

Page 20: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 19 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

移动

(✔) (✔) ✔ ✔ 复制值 S7-300/400:仅限 LAD 和 SFC MOVE MOVE :=

✔ ✔ 仅安全功能:将值间接写入故障安全数据块 WR_FBD

✔ ✔ 仅安全功能:从故障安全数据块间接读取值 RD_FBD

✔ 仅安全功能:从 INT 故障安全数组读取值 RD_ARRAY_I

✔ 仅安全功能:从 DINT 故障安全数组读取值 RD_ARRAY_DI

✔ ✔ 从 ARRAY of BYTE 复制数据类型(反序列化) 反序列化

✔ ✔ 从 ARRAY of BYTE 复制数据类型(序列化) 序列化

✔ ✔ 复制区域 S7-400:SFC 20 BLKMOV MOVE_BLK

✔ ✔ 以不可中断方式复制区域 S7-400:SFC 81 UBLKMOV UMOVE_BLK

✔ ✔ 复制区域 MOVE_BLK_VARIANT

✔ ✔ 填充区域 FILL_BLK

✔ ✔ 以不可中断方式填充区域 UFILL_BLK

Page 21: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ 将位字符串数据类型 BYTE,WORD,DWORD 或 LWORD 的变量拆分为单个位 (= scatter) SCATTER

✔ ✔ 将 ARRAY of BYTE、WORD、DWORD 或 LWORD 元素拆分为单个位 SCATTER_BLK

✔ ✔

将一个 ARRAY of BOOL、一个匿名 STRUCT 或一个仅由布尔元素构成的 PLC 数据类型中的所有位组合,构成 BYTE,WORD,DWORD 或 LWORD 字符串数据类型(= gather)

GATHER

✔ ✔将单个位与 ARRAY of BOOL 的多个元素、一个匿名 STRUCT 或一个仅由布尔元素构成的 PLC 数据类型组合

GATHER_BLK

✔ ✔ 改变排列 SWAP

✔ ✔“AssignmentAttempt”用于尝试将一个 VARIANT 变量赋值给参考变量。在声明时确定参考变量的数据类型;在运行时确定 VARIANT 变量的数据类型。

?=

ARRAY-DB

✔ ✔ 读取 ARRAY 数据块 ReadFromArrayDB

✔ ✔ 写入 ARRAY 数据块 WriteToArrayDB

✔ ☑ 读取装载存储器中的 ARRAY 数据块 ReadFromArrayDBL

Page 22: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 21 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ☑ 写入装载存储器中的 ARRAY 数据块 WriteToArrayDBL

Variant

✔ ✔ 读取 VARIANT 变量的值 VariantGet

✔ ✔ 写入 VARIANT 变量的值 VariantPut

✔ 查询 ARRAY 元素的数量 CountOfElements

Array [*]

✔ ✔ 读取 ARRAY 下边界 LOWER_BOUND

✔ ✔ 读取 ARRAY 上边界 UPPER_BOUND

读写访问

建议:采用符号化编程方式

✔ ✔ 读取小尾数格式数据 READ_LITTLE

✔ ✔ 写入小尾数格式数据 WRITE_LITTLE

✔ ✔ 读取大尾数格式数据 READ_BIG

✔ ✔ 写入大尾数格式数据 WRITE_BIG

✔ ✔ 读取存储器地址 PEEK

Page 23: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ 读取存储器位 PEEK_BOOL

✔ ✔ 写入存储器地址 POKE

✔ ✔ 写入存储器位 POKE_BOOL

✔ ✔ 写入存储区域 POKE_BLK

遗留

建议:采用符号化编程方式

✔ ✔ ✔ 复制区域 BLKMOV

✔ ✔ ✔ 以不可中断方式复制区域 UBLKMOV

✔ ✔ ✔ 填充区域 FILL

✔ ✔ 读取字段;建议:索引访问数组 FieldRead

✔ ✔ 写入字段;建议:索引访问数组 FieldWrite

转换

✔ ✔ ✔ ✔

转换值 S7-1200/1500:可将数字格式和数据类型转换为其他数字格式和数据类型。更多信息请访问 STEP 7 的信息系统

CONVERT xxx_TO_yyy

Page 24: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 23 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ ✔ 仅安全功能:将 BOOL 数据类型的数据转换为 WORD 数据类型的日期 BO_W

✔ ✔ ✔ ✔ 仅安全功能:将 WORD 数据类型的日期转换为 BOOL 数据类型的数据 W_BO

✔ ✔ ✔ ✔ 数字取整 ROUND RND ROUND

✔ ✔ ✔ ✔ 从浮点数生成高一级的整数 CEIL RND+ CEIL

✔ ✔ ✔ ✔ 从浮点数生成低一级的整数 FLOOR RND- FLOOR

✔ ✔ ✔ ✔ 生成整数 TRUNC

✔ ✔ ✔ ✔ 定标 SCALE_X

✔ ✔ 规范化 NORM_X

✔在变量上创建一个参考: 使用“ REF()”来指定先前声明的参考应指向哪个变量。

nn nn REF

✔ ✔ ✔ ✔ 将 BCD 码转换为整数(16 位) nn BTI BCD16_TO_INT

✔ ✔ ✔ ✔ 将整数(16 位)转换为 BCD 码 nn ITB INT_TO_ BCD16

Page 25: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ ✔ 将 BCD 码转换为整数(32 位) nn BTD BCD32_TO_INT

✔ ✔ ✔ ✔ 将整数(32 位)转换为 BCD 码 nn DTB DINT_TO_ BCD32

✔ ✔ ✔ ✔ 将整数(16 位)转换为整数(32 位) S7-1500:转换为隐式 nn ITD INT_TO_

DINT

✔ ✔ ✔ ✔ 将整数(32 位)转换为浮点数 S7-1500:转换为隐式 nn DTR DINT_TO_

REAL

✔ ✔ ✔ 生成整数(16 位)的补数 S7-1500:转换为隐式 nn INVI nn

✔ ✔ ✔ 生成整数(32 位)的补数 S7-1500:转换为隐式 nn INVD nn

✔ ✔ ✔ 整数(16 位)取反 nn NEGI nn

✔ ✔ ✔ 整数(32 位)取反 nn NEGD nn

✔ ✔ ✔ 浮点数取反 nn NEGR nn

✔ ✔ ✔ 交换累加器 1 右边字中的字节 nn TAW nn

✔ ✔ ✔ 交换累加器 1 中的所有字节 nn TAD nn

Page 26: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 25 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

变量指令

✔ ✔ 将 VARIANT 转换为 DB_ANY VARIANT_TO_DB_ANY

✔ ✔ 将 DB_ANY 转换为 VARIANT DB_ANY_TO_VARIANT

遗留

建议:采用符号化编程方式

✔ ✔ ✔ ✔将整数转换为某上下限之间的物理量(定标)。 标准 CPU:INT 转换为 REAL F-CPU:INT 转换为 INT

SCALE SCALE

✔ ✔ 将整数转换为某上下限之间的物理量(定标)。 F-CPU:INT 转换为 DINT SCALE_D

✔ ✔ ✔ 将浮点数降级为某下限和上限之间的物理单位,然后转换为整数(降级)。 UNSCALE

程序控制

✔ ✔ ✔ ✔ 条件分支 SPB IF… THEN… ELSE…

✔ ✔ ✔ ✔ 多重条件分支 IF… THEN… ELSIF…

Page 27: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ ✔ 进入多项元素分支 SPL CASE… OF…

✔ ✔ ✔ ✔ 进入计数循环 FOR… TO… DO…

✔ ✔ ✔ ✔ 进入递增计数循环 FOR… TO… BY… DO…

✔ ✔ ✔ ✔ CPU 在循环开始时检查条件,如果满足条件则执行 SPB WHILE… DO…

✔ ✔ ✔ ✔在不满足条件时执行。 CPU 在循环结束时检查条件满足情况,即 CPU 至少执行一次循环。

LOOP REPEAT… UNTIL…

✔ ✔ ✔ ✔ 取消当前循环并从下一个循环开始执行 CONTINUE

✔ ✔ ✔ ✔ 立即离开循环 EXIT

✔ ✔ ✔ ✔ 离开块 RET BEA RETURN

✔ ✔ 使程序代码结构化 REGION… END_REGION

✔ ✔ ✔ 有条件地结束块 BEB nn

✔ ✔ ✔ ✔ 插入注释段 V16 以上版本新功能:支持多语言注释 (/*…*/) nn // //, (*…*),

(/*…*/)

Page 28: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 27 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ 仅限于 SIMATIC S7-1500 软件控制器 CPU 150xS:关闭或重启 Windows 和控制器 SHUT_DOWN

跳转

✔ ✔ ✔ ✔ 跳转 nn JU GOTO…

✔ ✔ ✔ ✔ 当关系运算结果等于 1 时跳转 -(JMP) -[JMP] JC nn

✔ ✔ ✔ ✔ 当关系运算结果等于 0 时跳转 -(JMPN) -[JMPN] JCN nn

✔ ✔ ✔ ✔ 跳转标记 LABEL : nn

✔ ✔ 定义跳转表 JMP_LIST JL nn

✔ ✔ 跳转分配器 SWITCH nn

✔ ✔ ✔ ✔ 回跳 -(RET) -[RET] nn

✔ ✔ 仅安全功能:打开全局数据块 -(OPN) -[OPN] nn

✔ ✔ ✔ 当关系运算结果等于 1 时跳转并保存关系运算结果 nn JCB nn

✔ ✔ ✔ 当关系运算结果等于 0 时跳转并保存关系运算结果 nn JNB nn

✔ ✔ ✔ 当二进制运算结果等于 1 时跳转 nn JBI nn

✔ ✔ ✔ 当二进制运算结果等于 0 时跳转 nn JNBI nn

✔ ✔ ✔ 当 OV 等于 1 时跳转 nn JO nn

Page 29: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ 当 OS 等于 1 时跳转 nn JOS nn

✔ ✔ ✔ 当结果为 Null (0) 时跳转 nn JZ nn

✔ ✔ ✔ 当结果不为 Null (0) 时跳转 nn JN nn

✔ ✔ ✔ 当结果大于 Null (0) 时跳转 nn JP nn

✔ ✔ ✔ 当结果小于 Null (0) 时跳转 nn JM nn

✔ ✔ ✔ 当结果大于等于 Null (0) 时跳转 nn JPZ nn

✔ ✔ ✔ 当结果小于等于 Null (0) 时跳转 nn JMZ nn

✔ ✔ ✔ 当结果无效时跳转 nn JUO nn

✔ ✔ ✔ 循环跳转 nn LOOP nn

数据块

✔ ✔ ✔ 打开全局数据块 S7-1500:仅用于未优化块 OPN nn

✔ ✔ ✔ 打开数据块实例 S7-1500:仅用于未优化块 OPNI nn

✔ ✔ ✔ 交换数据块寄存器 TDB nn

✔ ✔ ✔ 将全局数据块的长度加载到累加器 1 中 L DBLG nn

Page 30: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 29 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ 将全局数据块的编号加载到累加器 1 中 L DBNO nn

✔ ✔ ✔ 将数据块实例的长度加载到累加器 1 中 L DILG nn

✔ ✔ ✔ 将数据块实例的编号加载到累加器 1 中 L DINO nn

代码块

✔ ✔ ✔ 调用块 LAD / SFC:仅限 S7-300/400 CALL nn

✔ ✔ ✔ 有条件地调用块 CC nn

✔ ✔ ✔ 无条件地调用块 UC nn

运行时控制

✔ ✔ 限制和释放密码的合法性 ENDIS_PW

✔ ✔ ✔ ✔ 重启循环监控时间 RE_TRIGR

✔ ✔ ✔ ✔ 结束程序 STP

✔ 仅限于 SIMATIC S7-1500 软件控制器 CPU 150xS:关闭或重启 Windows 和控制器 SHUT_DOWN

✔ ✔ 本地查询错误 GET_ERROR

✔ ✔ 本地查询错误 ID GET_ERR_ID

Page 31: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ 压缩 CPU 存储器 COMPRESS

✔ ✔ 控制 CiR 过程 CiR

✔ ✔ 重置所有保持性数据 INIT_RD

✔ ✔ ✔ ✔ 编程时间延迟 WAIT

✔ ✔ 更改保护级别 PROTECT

✔ ✔ 运行时间测量精确到纳秒 RUNTIME

✔ ✔ ✔ ✔ 仅安全功能:来自操作系统和监视系统的故障安全确认 F_ACK_OP

字关系运算

✔ ✔ ✔ ✔ 取一补数 INVERT NOT

✔ ✔ ✔ ✔ 解码:设置指定位 DECO

✔ ✔ ✔ ✔ 编码:给出输入值中最低占用位的位数 ENCO

✔ ✔ ✔ ✔ 选择:根据一个 BOOL 值给出参数作为结果 SEL

(✔) (✔) ✔ ✔ 多路复用器 S7-300/400:仅限 SCL MUX nn MUX

✔ ✔ 反向多路复用器 DEMUX nn DEMUX

Page 32: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 31 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ ✔ 逐字进行“与”运算 AND AW &, AND

✔ ✔ ✔ ✔ 逐字进行“或”运算 OR OW OR

✔ ✔ ✔ ✔ 逐字进行“异或”运算 XOR XOW XOR

✔ ✔ ✔ ✔ 逐双字进行“与”运算 AND AD &, AND

✔ ✔ ✔ ✔ 逐双字进行“或”运算 OR OD OR

✔ ✔ ✔ ✔ 逐双字进行“异或”运算 XOR XOD XOR

移动与旋转✔ ✔ ✔ ✔ 向右旋转 ROR

✔ ✔ ✔ ✔ 向左旋转 ROL

✔ ✔ ✔ ✔ 逐字右移 SHR SRW SHR

✔ ✔ ✔ ✔ 逐字左移 SHL SLW SHL

✔ ✔ ✔ 逐字带符号移动 SSI nn

✔ ✔ ✔ 逐双字带符号移动 SSD nn

✔ ✔ ✔ 逐双字右移 SRD nn

✔ ✔ ✔ 逐双字左移 SLD nn

Page 33: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ 逐双字右移 SHR RRD SHR

✔ ✔ ✔ 逐双字左移 SHL RLD SHL

✔ ✔ ✔ 通过状态位 A1 向左旋转 RLDA nn

✔ ✔ ✔ 通过状态位 A1 向右旋转 RRDA nn

关于 S7-400 的提示:控制器有四个累加器。下面的列表只列出了两个累加器的指令。

加载

✔ ✔ ✔ 加载 nn L nn

✔ ✔ ✔ 加载累加器 1 中的状态字 L STW nn

✔ ✔ ✔ 用累加器 1 中的内容加载 AR1 LAR1 nn

✔ ✔ ✔ 用双字或区域指针加载 AR1 LAR1 <D> nn

✔ ✔ ✔ 用 AR2 中的内容加载 AR1 LAR1 AR2 nn

✔ ✔ ✔ 用累加器 1 中的内容加载 AR2 LAR2 nn

✔ ✔ ✔ 用双字或区域指针加载 AR2 LAR2 <D> nn

Page 34: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 33 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

转移

✔ ✔ ✔ 转移 nn T nn

✔ ✔ ✔ 将累加器 1 转移至状态字 T STW nn

✔ ✔ ✔ 交换 AR1 和 AR2 TAR nn

✔ ✔ ✔ 将 AR1 转移至累加器 1 TAR1 nn

✔ ✔ ✔ 将 AR1 转移至双字 TAR1 <D> nn

✔ ✔ ✔ 将 AR1 转移至 AR2 TAR1 AR2 nn

✔ ✔ ✔ 将 AR2 转移至累加器 1 TAR2 nn

✔ ✔ ✔ 将 AR2 转移至双字 TAR2 <D> nn

遗留

✔ ✔ ✔ 实现定序器 DRUM

✔ ✔ 实现定序器 DRUM_X

✔ ✔ ✔ 离散控制时间中断 DCAT

✔ ✔ ✔ 电机控制时间中断 MCAT

✔ ✔ ✔ 比较输入位和掩码位 IMC

Page 35: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ 矩阵扫描仪 SMC

✔ ✔ ✔ 超前和滞后算法 LEAD_LAG

✔ ✔ ✔ 创建用于 7 段显示的位模式 SEG

✔ ✔ ✔ 生成十进制补码 BCDCPL

✔ ✔ ✔ 计算已占用位的数量 BITSUM

✔ ✔ 累积时间 TONR_X

✔ ✔ 将日期保存在移位寄存器中 WSR

✔ ✔ 将位移动到移位寄存器中 SHRB

✔ ✔ 查询状态位 Status -||- A 0V nn

✔ ✔ 调用块 -(CALL) -[CALL] UC nn

✔ ✔ 将关系运算结果保存在二进制位中 -(SAVE) -[SAVE] SAVE nn

✔ ✔ 打开 MCR 区域 -(MCR<) -[MCR<] MCR( nn

✔ ✔ 关闭 MCR 区域 -(MCR>) -[MCR>] )MCR nn

✔ ✔ 激活 MCR 区域 -(MCRA) -[MCRA] MCRA nn

✔ ✔ 禁用 MCR 区域 -(MCRD) -[MCRD] MCRD nn

Page 36: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 35 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD SFCAWL

(非 S7-1200)

SCL

✔ ✔ 按位设置区域 SET

✔ ✔ 按字节设置区域 SETI

✔ ✔ 按位重置区域 RESET

✔ ✔ 按字节重置区域 RESETI

✔ ✔ 输入替代值 REPL_VAL

✔ ✔ ✔ 交换累加器 1 和 2 的内容 nn TAK nn

✔ ✔ ✔ 将内容移至高一级的累加器 nn PUSH nn

✔ ✔ ✔ 将内容移至低一级的累加器 nn POP nn

✔ ✔ ✔ 将累加器 1 添加到 AR1 nn +AR1 nn

✔ ✔ ✔ 将累加器 1 加到 AR2 nn +AR2 nn

✔ ✔ ✔ 构造图像(空指令) nn BLD nn

✔ ✔ ✔ 空指令 nn NOP 0 nn

✔ ✔ ✔ 空指令 nn NOP 1 nn

Page 37: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信

“高级指令”章节中涉及的指令指令组 页 指令组 页 指令组 页

S7-3

00

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

日期和时间✔ ✔ ✔ 比较时间变量 T_COMP*

✔ ✔ ✔ ✔ 转换和提取时间 T_CONV*

✔ ✔ ✔ ✔ 时间相加 T_ADD*

✔ ✔ ✔ ✔ 时间相减 T_SUB*

✔ ✔ ✔ ✔ 时间差 T_DIFF*

✔ ✔ ✔ 组合时间 T_COMBINE*

* SCL:使用转换函数 x_TO_y(例如 TIME_TO_DINT)以及比较运算和计算操作数(例如 +、-、>、<)。

日期和时间 40字符串和字符 42过程映像 45分布式外围设备 45PROFIenergy 47模块参数设置 48

中断 49消息 51诊断 53脉冲 54配方和数据日志 54数据块功能 55

表格功能 56寻址 57文件操作 (File Handling) 58R/H 系统 58其他指令 59

Page 38: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 37 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

时间函数

✔ ✔ ✔ ✔ 设置时间 (STEP 7 V 5x:SET_CLK) WR_SYS_T

✔ ✔ ✔ ✔ 读取时间 (STEP 7 V 5x:READ_CLK) RD_SYS_T

✔ ✔ 读取本地时间 RD_LOC_T

✔ ✔ 写入本地时间 WR_LOC_T

✔ ☑ 同步时间从站 SNC_RTCB

✔ ✔ ✔ 读取系统时间 TIME_TCK

✔ ☑ 设定时区 SET_TIMEZONE

✔ ✔ ✔ ✔ 运行小时计数器 RTM

✔ ✔ 设置运行小时计数器 SET_RTM

✔ ✔ 启动和停止运行小时计数器 CTRL_RTM

✔ ✔ 读取运行小时计数器 READ_RTM

✔ 设置时间和时间状态 SET_CLKS

Page 39: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

本地时间

✔ ✔ 计算本地时间 LOC_TIME

✔ ✔ 从基准时间计算本地时间 BT_LT

✔ ✔ 从本地时间计算基准时间 LT_BT

✔ ✔ 本地时间日期时钟中断 S_LTINT

✔ ✔ 设置无时间状态的夏/冬令时时间 SET_SW

✔ ✔ 传输带时间戳的消息 TIMESTMP

✔ 设置带时间状态的夏/冬令时时间 SET_SW_S

字符串和字符✔ ✔ 移动字符串 S_MOVE :=

✔ ✔ ✔ 比较字符串 S_COMP =

✔ ✔ ✔ ✔ 转换字符串 S_CONV

✔ ✔ 将字符串转换为数值 STRG_VAL STRG_...

✔ ✔ 将数值转换为字符串 VAL_STRG …_STRG

✔ ✔ 将字符串转换为 CHAR 数组 Strg_TO_Chars

Page 40: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 39 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

✔ ✔ 将 CHAR 数组转换为字符串 Chars_TO_Strg

✔ ✔ 确定一个字符串的最大长度 MAX_LEN

✔ 连接多个字符串 JOIN

✔ 将字符数组拆分为多个字符串 SPLIT

✔ ✔ ✔ ✔ 将 ASCII 字符串转换为十六进制数字(在转换函数中转换,例如:CHAR_TO_WORD) HTA

✔ ✔ ✔ ✔ 将十六进制数转换为 ASCII 字符串 HTA

✔ ✔ ✔ ✔ 确定一个字符串的长度 LEN

✔ ✔ ✔ ✔ 连接字符串 CONCAT

✔ ✔ ✔ ✔ 读取字符串的左边字符 LEFT

✔ ✔ ✔ ✔ 读取字符串的右边字符 RIGHT

✔ ✔ ✔ ✔ 读取字符串的中间字符 MID

✔ ✔ ✔ ✔ 删除字符串中的字符 DELETE

Page 41: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

✔ ✔ ✔ ✔ 在字符串中添加字符 INSERT

✔ ✔ ✔ ✔ 替换字符串中的字符 REPLACE

✔ ✔ ✔ ✔ 在字符串中查找字符 FIND

运行时信息

✔ ✔ 读取输入参数中的变量名称 GetSymbolName

✔ ✔

读取调用路径开头处的全局名称。原理图:

GetInstanceName

✔ ✔ 读取块实例的名称 GetSymbolPath

✔ ✔ 查询块实例的综合全局名称 GetInstancePath

Page 42: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 41 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

✔ ✔ 在块中读取块名称 GetBlockName

过程映像✔ ✔ 更新输入的过程映像 UPDAT_PI

✔ ✔ 更新输出的过程映像 UPDAT_PO

✔ ✔ ☑ 同步输入的过程映像 SYNC_PI

✔ ✔ ☑ 同步输出的过程映像 SYNC_PO

分布式外围设备DP 和 PROFINET

✔ ✔ ✔ ✔ 读取数据记录 RDREC

✔ ✔ ✔ ✔ 写入数据记录 WRREC

✔ ✔ ✔ ✔ 读取过程映像 GETIO

✔ ✔ ✔ ✔ 传输过程映像 SETIO

✔ ✔ ✔ ✔ 读取过程映像区域 GETIO_PART

✔ ✔ ✔ ✔ 传输过程映像区域 SETIO_PART

Page 43: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

✔ ✔ ✔ ✔ 接收中断 RALRM

✔ ✔ ✔ ☑ 停用/激活 DP 从站 D_ACT_DP

☑控制 PROFINET IO 系统的配置(处理选项) 为此需要打开或关闭设备,例如:灵活地执行或跳过生产过程中的某些生产步骤。

ReconfigIOSystem

其他指令

✔ ✔ ☑ 从外围设备读取数据记录 RD_REC

✔ ✔ ☑ 写入外围设备的数据记录 WR_REC

✔ ✔ ✔ ✔ 读取 DP 标准从站的一致数据 DPRD_DAT

✔ ✔ ✔ ✔ 写入 DP 标准从站的一致数据 DPWR_DAT

iDevice / iSlave

✔ ✔ ☑ 接收数据记录 RCVREC

✔ ✔ ☑ 准备数据记录 PRVREC

✔ 发送中断 SALRM

Page 44: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

PROFIBUS

✔ ✔ 从 DP 标准从站触发过程中断 DP_PRAL

✔ ✔ ☑ 同步 DP 从站 / 冻结输入 DPSYC_FR

✔ ✔ ✔ ☑ 读取 DP 从站的诊断数据 DPNRM_DG

✔ ✔ ☑ 确定 DP 主站系统的拓扑 DP_TOPOL

ASi

✔ ✔ 控制 ASi 主站行为 ASi_3422

✔ ✔ ✔ 控制 ASi 主站行为 ASI_CTRL

PROFIenergyIO 控制器

✔ ✔ ✔ 启动和停止节能模式 PE_START_END

✔ ✔ ✔ 启动和停止节能模式 / 读取状态信息 PE_CMD

✔ ✔ ✔ 设置电源模块的开关行为 PE_DS3_WRITE_ET200S

✔ ✔ ☑ 通过 WakeOnLan 启动和停止节能模式 PE_WOL

Page 45: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

iDevice / iSlave

✔ ✔ ☑ 在 iDevice 中控制 PROFIenergy 命令 PE_I_DEV

✔ ✔ ✔ 生成对命令的否定响应 PE_Error_RSP

✔ ✔ ✔ 生成对开始暂停命令的响应 PE_Start_RSP

✔ ✔ ✔ 生成对结束暂停命令的响应 PE_End_RSP

✔ ✔ ✔ 生成已请求的节能模式作为响应 PE_List_Modes_RSP

✔ ✔ ✔ 生成已请求的节能数据作为响应 PE_Get_Mode_RSP

✔ ✔ ✔ 生成 PEM 状态作为响应 PE_PEM_Status_RSP

✔ ✔ ✔ PROFIenergy 命令的数量 PE_Identify_RSP

✔ ✔ ✔ 生成支持的 PROFIenergy 命令作为响应 PE_Measurement_List_RSP

✔ ✔ ✔ 生成要求的测量值作为响应 PE_Measurement_Value_RSP

模块参数设置✔ ✔ ✔ 读取模块的数据记录(预定义参数) RD_DPAR

✔ ✔ 异步读取模块的数据记录(预定义参数) RD_DPARA

Page 46: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 45 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

✔ ✔ 传输模块的数据记录 PARM_MOD

✔ ✔ 从已组态的系统数据中读取数据记录(预定义参数) RD_DPARM

✔ ✔ 写入一个模块的数据记录 (动态参数) WR_PARM

✔ ✔ ☑ 传输数据记录(预定义参数) WR_DPARM

中断

✔ ☑ 将组织块分配给中断事件 ATTACH

✔ ☑ 将组织块与中断事件分离 DETACH

唤醒中断

✔ ✔ 设置唤醒中断参数 SET_CINT

✔ ✔ 查询唤醒中断参数 QRY_CINT

Page 47: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

时钟中断

✔ ✔ ✔ 设置时钟中断 SET_TINT

✔ ✔设置时钟中断 LOCAL:SDT 指本地时间或系统时间。 ACTIVATE:组织块接受设置的时间。

SET_TINTL

✔ ✔ ✔ ✔ 取消时钟中断 CAN_TINT

✔ ✔ ✔ ✔ 激活时钟中断 ACT_TINT

✔ ✔ ✔ ✔ 查询时钟中断状态 QRY_TINT

延迟中断

✔ ✔ ✔ ✔ 启动延迟中断 SRT_DINT

✔ ✔ ✔ ✔ 取消延迟中断 CAN_DINT

✔ ✔ ✔ ✔ 查询延迟中断状态 QRY_DINT

同步错误事件

✔ ✔ ✔ 标记同步错误事件 MSK_FLT

✔ ✔ ✔ 取消标记同步错误事件 DMSK_FLT

✔ ✔ ✔ 读取事件状态寄存器 READ_ERR

Page 48: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 47 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

异步错误事件

✔ ✔ ✔ 锁定中断事件 DIS_IRT

✔ ✔ ✔ 释放中断事件 EN_IRT

✔ ✔ ✔ ✔ 延迟处理较高优先级的中断和异步错误事件 DIS_AIRT

✔ ✔ ✔ ✔ 释放处理较高优先级的中断和异步错误事件 EN_AIRT

✔ 触发多重运算中断 MP_ALM

消息✔ 生成具有伴随值的程序消息 Program_Alarm

✔ 输出消息状态 Get_AlarmState

✔ 读取待处理消息 Get_Alarm

✔ 确认消息 Ack_Alarms

✔ ✔ 生成录入诊断缓冲区的用户诊断消息 Gen_UsrMsg

✔ ✔ 将用户诊断事件写入诊断缓冲区,并将其发送给登陆的用户 WR_USMSG

✔ ✔ 生成中断消息 ALARM_S

Page 49: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

✔ ✔ 生成带确认的中断消息 ALARM_SQ

✔ ✔ 始终生成已确认的 PLC 消息 ALARM_D

✔ ✔ 生成可确认的 PLC 消息 ALARM_DQ

✔ ✔ 确定最后一条到达的 ALARM_SQ 消息的确认状态 ALARM_SC

✔ 报告最多八个信号变化 NOTIFY_8P

✔ 为八个信号生成无伴随值的 PLC 消息 ALARM_8

✔ 为八个信号生成带伴随值的 PLC 消息 ALARM_8P

✔ 报告信号变化 NOTIFY

✔ 生成带有确认显示的 PLC 消息 ALARM

✔ 发送存档数据 AR_SEND

其他指令

✔ ✔ 读取动态占用的系统资源 READ_SI

✔ ✔ 删除动态占用的系统资源 DEL_SI

✔ 释放 PLC 消息 EN_MSG

✔ 锁定 PLC 消息 DIS_MSG

Page 50: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 49 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

诊断✔ ✔ ✔ 读取当前组织块的启动信息 RD_SINFO

✔ 读取运行时统计 RT_INFO

✔ 确定组织块程序运行时间 OB_RT

✔ 确定当前连接状态 C_DIAG

✔ ✔ 读取系统状态列表 RDSYSST

✔ ✔ 读取 LED 状态 LED

✔ ✔ 读取识别和维护数据 Get_IM_Data

✔ ✔ 读取模块名称 Get_Name

✔ ✔ 读取 IO 设备信息 GetStationInfo

✔ ✔ 读取校验和 GetChecksum

✔ 读取有关存储卡的信息 GetSMCinfo

Page 51: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

读取 CPU 时钟状态 • 是否通过 NTP 服务器激活时间同步? • 是否调整时间同步? • 是否已激活自动适应夏令时和冬令时时间?

GetClockStatus

✔ ✔ 在 IO 系统中读取模块状态信息 DeciveStates

✔ ✔ 读取模块的模块状态信息 ModuleStates

✔ 生成诊断信息 GEN_DIAG

✔ ✔ 读取诊断信息 GET_DIAG

脉冲✔ 脉宽调制 CTRL_PWM

✔ 脉冲输出,以预定频率输出脉冲序列 CTRL_PTO

配方和数据日志配方功能

✔ ☑ 导出配方 RecipeExport

✔ ☑ 导入配方 RecipeImport

Page 52: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 51 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

数据日志

✔ ☑ 创建数据日志 DataLogCreate

✔ ☑ 打开数据日志 DataLogOpen

✔ ☑ 写入数据日志 DataLogWrite

✔ ☑ 清空数据日志 DataLogClear

✔ ☑ 关闭数据日志 DataLogClose

✔ ☑ 删除数据日志 DataLogDelete

✔ ☑ 新文件的数据日志 DataLogNewFile

数据块功能✔ ✔ 生成数据块 CREAT_DB

✔ ☑ 生成数据块 CREATE_DB

✔ ✔ 在装载存储器中生成数据块 CREA_DBL

✔ ✔ ✔ ☑ 读取装载存储器中的数据块 READ_DBL

Page 53: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

✔ ✔ ✔ ☑ 写入装载存储器中的数据块 WRIT_DBL

✔ ✔ 读取一个数据块的属性 ATTR_DB

✔ ✔ 删除数据块 DEL_DB

✔ ☑ 删除数据块 DELETE_DB

✔ ✔ 测试数据块 TEST_DB

表格功能✔ ✔ 将值录入表格 ATT

✔ ✔ 输出表格的第一个值 FIFO

✔ ✔ 在表格中搜索值 TBL_FIND

✔ ✔ 输出表格的最后一个值 LIFO

✔ ✔ 执行表格操作 TBL

✔ ✔ 从表中执行值 TBL_WRD

✔ ✔ 将值与表元素进行逻辑关系运算并保存 WRD_TBL

✔ ✔ 计算标准偏差 DEV

Page 54: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 53 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

✔ ✔ 相关数据表 CDT

✔ ✔ 链接表 TBL_TBL

✔ ✔ 收集/分发表数据 PACK

寻址✔ ✔ 根据插槽确定硬件标识 GEO2LOG

✔ ✔ 根据硬件标识确定插槽 LOG2GEO

✔ 根据 STEP 7 V5.5 SPx 的寻址确定硬件标识 LOG2MOD

✔ ✔ 根据 IO 地址确定硬件标识 IO2MOD

✔ ✔ 根据硬件标识确定 IO 地址 RD_ADDR

其他寻址指令

✔ ✔ ✔S7-300/400:根据插槽确定起始地址 S7-1500:根据插槽确定硬件标识,仅用于兼容性,不建议使用

GEO_LOG

Page 55: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

✔ ✔ ✔S7-300/400:根据逻辑地址确定插槽 S7-1500:根据硬件标识确定插槽,仅用于兼容性,不建议使用

LOG_GEO

✔ ✔ ✔ S7-300/400:根据一个逻辑地址确定所有逻辑地址 S7-1500:根据硬件标识确定逻辑地址 RD_LGADR

✔ ✔ ✔

S7-300/400:根据插槽和有效负载地址空间中的偏移量确定逻辑基地址 S7-1500:根据插槽和有效负载地址空间中的偏移量确定硬件标识

GADR_LGC

✔ ✔ ✔

S7-300/400:根据逻辑地址确定插槽和主有效负载中的偏移量 S7-1500:根据硬件标识确定插槽,仅用于兼容性,不建议使用

LGC_GADR

Page 56: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL(非 S7-1200) SCL

文件操作 (File Handling)

☑ 从存储卡中读取二进制文件中的数据,该二进制文件具有序列化格式/字节数组 FileReadC

☑ 将数据写入存储卡上的二进制文件中 FileWriteC

✔ 删除存储卡上的现有文件 FileDelete

R/H 系统

RH

仅限于 S7-1500 R/H:释放或锁定 SYNCUP 系统状态。锁定可以持续至: • 锁定解除 • S7-1500R/H 系统停机

RH_CTRL

RH确定主 CPU 的冗余 ID 1 = 冗余 ID 为 1 的 CPU 是主 CPU。 2 = 冗余 ID 为 2 的 CPU 是主 CPU。

RH_GetPrimaryID

其他指令iSlave

✔ 将自身网络地址设置为 DP-iSlave SET_ADDR

Page 57: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信

“技术”章节中涉及的指令指令组 页 指令组 页 指令组 页

S7-300 列中的 T 表示:S7-300 技术 CPU S7-31xT 的指令。S7-300 和 S7-1500 的指令作用方式可能有所不同。表格中未列出针对 S7-31xT 的指令。不能在 TIA 博途中对技术 CPU S7-31xT 进行编程。

S7-1500 列中的 T 表示:技术 CPU S7-15xyT 的指令。

S7-3

00

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC / AWL(非 S7-1200)/ SCL

计数(和测量)✔ 控制快速计数器 CTRL_HSC

✔ 扩展快速计数器 使用系统数据类型 331 进行阶段持续时间测量 CTRL_HSC_EXT

✔ 用于计数和测量的快速计数器 High_Speed_Counter

✔ 使用 SSI 绝对编码器获取位置 SSI_Absolut_Encoder

计数(和测量) 60PID 控制 61

运动控制 63时间控制的输入/输出 70

S7-300C 功能 71功能模块 71

Page 58: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 57 页

简单指令 高级指令 技术 通信

PID 控制Compact PID

✔ ✔ 通用 PID 控制器,集成了针对比例执行器的优化 PID_Compact

✔ ✔ PID 控制器,集成了针对阀门和执行器的自优化 PID_3Step

✔ ✔ 温度控制器,集成了针对温度过程的优化 PID_Temp

PID 基础功能

✔ ✔ ✔ 连续控制器 CONT_C

✔ ✔ ✔ 用于集成执行器的步进控制器 CONT_S

✔ ✔ ✔ 用于比例执行器的脉冲发生器 PULSEGEN

✔ ✔ ✔ 带脉冲发生器的连续温度控制器 TCONT_CP

✔ ✔ ✔ 用于集成执行器的温度控制器 TCONT_S

✔ ✔ 自动优化连续控制器 TUN_EC

✔ ✔ 自动优化步进控制器 TUN_ES

Page 59: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信

集成系统功能

✔ 连续控制器 CONT_C_SF

✔ 用于集成执行器的步进控制器 CONT_S_SF

✔ 用于比例执行器的脉冲发生器 PULSGEN_SF

辅助功能

✔ ✔ 通过特性曲线将输入值映射到输出值。 特征曲线是具有线性插值的最多 50 个支点的多边形。 折线

✔ ✔ 将输入值转换为输出值 SplitRange

✔ ✔ 限制信号的变化率 RampFunction

✔ ✔ ✔

一阶比例传输器 应用: - 低通滤波器 - 用于平滑信号跳变的延迟器 - CPU 内闭环的过程模拟块 参数:Gain,Lag

Filter_PT1

Page 60: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 59 页

简单指令 高级指令 技术 通信

✔ ✔ ✔

二阶比例传输器 应用: - 低通滤波器 - 用于平滑信号跳变的延迟器 - CPU 内闭环的过程模拟块 参数:Gain,TimeConstant,Damping

Filter_PT2

✔ ✔ ✔

具有一阶延迟的微分器 应用: - 高通滤波器 - 计算信号导数的微分器 - 干扰量搭接 参数:Td,Lag

Filter_DT1

运动控制T ✔ ☑ 释放/锁定轴/技术对象 MC_Power

T ✔ ☑ 响应中断,重新启动轴/技术对象 MC_Reset

T ✔ ☑ 参考轴/技术对象,设置参考点 MC_Home

T ✔ ☑ 停止轴 MC_Halt

T ✔ ☑ 绝对定位轴 MC_MoveAbsolute

T ✔ ☑ 相对定位轴 MC_MoveRelative

T ✔ ☑ 根据指定速度/转速移动轴 MC_MoveVelocity

Page 61: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信T ✔ ☑ 在点动模式下移动轴 MC_MoveJog

✔ 将轴任务作为运动序列执行 MC_CommandTable

✔ 更改轴的动态设置 MC_ChangeDynamic

✔ 写入定位轴变量 MC_WriteParam

✔ 连续读取定位轴的运动数据 MC_ReadParam

T ☑ 重叠定位轴 MC_MoveSuperImposed

T T 将备选编码器切换为有效编码器 MC_SetSensor

T T停止轴并阻止新的移动任务 停止轴的所有移动并阻止新的移动任务。制动轴至静止状态并保持接通。

MC_STOP

☑ 设置 PROFIdrive 报文的控制字 (STW) 1 和/或 2 中的位。 MC_SetAxisSTW

T ☑ 在运行时激活和禁用硬件限位开关。更改后的状态立即生效,并一直到技术对象的下一次重启前保持有效。 MC_WriteParameter

T 读取技术对象的参数 MC_ReadParameter

凸轮,凸轮轨道,探头

T ☑ 启动单次测量 MC_MeasuringInput

Page 62: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 61 页

简单指令 高级指令 技术 通信

T ☑ 启动循环测量 S7-1500:MC_MeasuringInputCyclic S7-300T:MC_MeasuringInput

T ☑ 取消激活的测量任务 S7-1500:MC_AbortMeasuringInput S7-300T:MC_MeasuringInput

T ☑ 激活/禁用凸轮

S7-1500:MC_OutputCam(行程凸轮和时间凸轮)

S7-300T:MC_CamSwitch(行程凸轮) S7-300T:MC_CamSwitchTime(时间凸轮)

T ☑ 激活/禁用凸轮轨迹 MC_CamTrack

同步运动 - 齿轮同步/凸轮同步

T ☑ 启动齿轮同步 MC_GearIn

T T 通过指定的同步位置开始齿轮同步 S7-1500T:MC_GearInPos S7-300T:MC_GearIn

T 开始凸轮同步 MC_CamIn

T 在模拟中设置同步 MC_SynchronizedMotionSimulation

T T 相对移动跟随轴的电导 S7-1500T:MC_PhasingRelative S7-300T:MC_Phasing

T T 绝对移动跟随轴的电导 S7-1500T:MC_PhasingAbsolute S7-300T:MC_Phasing

Page 63: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信

T 指定附加电导, 主动电导 + 附加电导 = 有效电导 MC_LeadingValueAdditive

凸轮

T T 插补凸轮 MC_InterpolateCam

T T 读取凸轮的电导 S7-1500T:MC_GetCamLeadingValue S7-300T:MC_GetCamPoint

T T 读取凸轮的跟随值 S7-1500T:MC_GetCamFollowingValue S7-300T:MC_GetCamPoint

移动输入

T 指定速度和加速度的默认移动值 MC_MotionInVelocity

T 指定位置、速度和加速度的默认移动值 MC_MotioninPosition

力矩数据

☑ 指定附加力矩 MC_TorqueAdditive

☑ 指定上下力矩极限值 MC_TorqueRange

T ☑ 激活/禁用力矩限制/扭矩限制/固定挡块识别 MC_TorqueLimiting

Page 64: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 63 页

简单指令 高级指令 技术 通信

移动(运动学) - 力矩限制/扭矩限制/固定挡块识别

T T 中断移动执行 MC_GroupInterrupt

T T 继续移动执行 MC_GroupContinue

T T 停止移动 MC_GroupStop

T T 对直线移动的运动学进行绝对定位 MC_MoveLinearAbsolute

T T 对直线移动的运动学进行相对定位 MC_MoveLinearRelative

T T 对圆周轨道移动的运动学进行绝对定位 MC_MoveCircularAbsolute

T T 对圆周轨道移动的运动学进行相对定位 MC_MoveCircularRelative

T 对点到点移动的运动学进行绝对定位 MC_MoveDirectAbsolute

T 对点到点移动的运动学进行相对定位 MC_MoveDirectRelative

T激活轨道跟踪。 对象坐标系 (OCS) 具有技术对象定位轴/外部编码器/副引导轴

MC_TrackConveyorBelt

区域

T 定义工作区 MC_DefineWorkspaceZone

Page 65: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信T 定义运动区 MC_DefineKinematicsZone

T 激活工作区 MC_SetWorkspaceZoneActive

T 禁用工作区 MC_SetWorkspaceZoneInactive

T 激活运动区 MC_SetKinematicsZoneActive

T 禁用运动区 MC_SetKinematicsZoneInactive

刀具

T 指定新刀具 MC_DefineTool

T 更换活动刀具 MC_SetTool

坐标系统

T 重新定义对象坐标系 MC_SetOcsFrame

T 无需运动学将轴坐标(位置、速度、加速度)转换为笛卡尔坐标(刀具工作点的速度和加速度)。 MC_KinematicsTransformation

T 无需运动学将笛卡尔坐标转换为轴坐标 MC_InverseKinematicsTransformation

时间控制的输入/输出HSP HSP ☑ 同步 TIO 模块 TIO_SYNC

HSP HSP ☑ 读取带有时间戳的过程输入信号 TIO_IOLink_IN

Page 66: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 65 页

简单指令 高级指令 技术 通信

HSP HSP ☑ 读取数字输入的沿和所属的时间戳 TIO_DI

HSP HSP ☑ 由时间控制给出过程输出信号 TIO_IOLink_OUT

HSP HSP ☑ 由时间控制给出数字输出的沿 TIO_DQ

S7-300C 功能✔ 通过模拟输出定位 ANALOG

✔ 通过数字输出定位 DIGITAL

✔ 控制计数器 COUNT

✔ 控制频率测量仪 FREQUENC

✔ 控制脉宽调制 脉冲

功能模块

✔ ✔ FM 模块的计数 / 定位 / 凸轮控制 / PID 控制 / 温度控制等多个指令 ✔

Page 67: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信以下页面概述了开放式通信和 S7 通信重要功能的详细信息和使用方式。

开放式通信定义:SIMATIC 控制器之间或 SIMATIC 控制器与第三方设备之间通过 PROFINET/工业以太网进行开放式数据交换。合适的接口示例:

● 控制器的集成 PROFINET/工业以太网接口 ● 通信模块的 PROFINET/工业以太网接口

由于通信开放且灵活,接收方不会自动了解到已发送数据包的大小。用于连接的 TCP 或 ISO-on-TCP可以使用 TCP 或 ISO-on-TCP 在通信伙伴之间建立连接。TCP 或 ISO-on-TCP 可传输确认回执,以确保数据能够到达接收器。控制器会在数据丢失后自动重新发送数据。 在使用 TCP 时,为了确保数据完整到达接收器的应用程序中,必须:1. 确定发送器中数据包的大小。2. 将数据包的大小通知接收器。3. 评估接收器中的信息使用 UDP 时无需建立连接无需建立专用连接即可通过 UDP 将数据包发送给接收器。控制器无法检测到数据丢失。UDP 提供以下传输选项:

● 传输至特殊伙伴 - 单播 ● 传输至特殊伙伴组 - 多播;例如通过定义的多播地址 224.0.1.0 进行多播。 ● 传输至所有结点 - 广播

Page 68: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 67 页

简单指令 高级指令 技术 通信S7

-300

/400

S7-1

200

S7-1

500 指令 协议 数据传输特性 大型数据包 应用和

应用示例

✔ ✔ ✔ TSEND/TRCV

TCP 或 ISO-on-TCP 可靠的应答

<= 64 KB 例外 S7-1200: <= 8 KB

通过应答交换大量数据。例如:将具有测量值协议的数据块发送给任意网络参与者。 通过证书交换来保护连接。 实施基于 TCP 的协议,例如 FTP(s)、MQTT、HTTP(S)。应用示例: HTTP:https://support.industry.siemens.com/cs/de/de/view/109763879 MQTT:https://support.industry.siemens.com/cs/de/de/view/109748872

✔ ✔ TSEND_C/TRCV_C (集成建立和删除连接功能)

✔ ✔

UDP 快速无应答无应答分发数据。例如:快速将位置数据分发给多个参与者。 可在控制器的设备手册中找到有关限值的精确计算。(✔) ✔ ✔ TUSEND/TURCV

(非 S7-300) 最多 2048 字节

Page 69: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信简单指令 高级指令 技术 通信

S7 通信定义:通过 PROFIBUS 或 PROFINET/工业以太网在 SIMATIC CPU 之间进行 SIMATIC 同构数据交换。S7 通信可以通过控制器在 PROFINET 和 PROFIBUS 之间路由数据。通过 S7 通信可将现有 S7-300/400 连接到 S7-1200/1500 或将现有的系统迁移到 S7-1200/1500 之上。建议:请使用开放式通信在 S7-1200/1500 之间进行数据交换,由此可使用通用的以太网标准。

使用 BSEND 和 BRCV 进行协调数据传输BSEND 将数据发送到伙伴控制器中 BRCV 类型的指令中。由于 BSEND 和 BRCV 对数据传输进行了协调,因此 BSEND/BRCV 可在已组态的 S7 连接中发送非常大的数据量。BSEND 对要发送的数据区域进行分段,并将每个分段分别发送给伙伴。由 BRCV 对接收到的发送段进行应答。如果 BRCV 已应答收到完整数据区域,则可以启动新的 BSEND 发送作业。

使用 USEND 和 URCV 进行不协调的数据传输USEND 将数据发送到伙伴控制器中 URCV 类型的指令中。URCV 收到数据后不应答。数据传输未与伙伴控制器进行协调。也就是说:在 URCV 将所有数据写入目标区域之前,USEND 可以覆盖接收数据。如果 USEND 覆盖数据,则接收方将发出错误消息。

Page 70: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 69 页

简单指令 高级指令 技术 通信S7

-300

/400

S7-1

200

S7-1

500 指令 合作伙伴控制

器运行状态数据传输特性

指定伙伴控制器的可保证有效负载量

应用 提示

✔ ✔ ✔ GET

RUN 或 STOP

可靠的应答

<= 64 KB S7-300:160 字节 S7-400:400 字节 S7-1200:160 字节 S7-1500:880 字节 S7-1200 例外: <= 8 KB

无需任何编程即可访问伙伴控制器中的数据。例如读取运行数据。

必须使用带有绝对寻址的数据块。无法进行符号寻址。必须在 CPU 组态中的“保护”区域中启用此服务。

✔ GET_S

✔ ✔ ✔ PUT无需任何编程即可修改伙伴控制器中的数据。例如将参数写入数据块并更改配方。✔ PUT_S

✔ ✔ BSEND/BRCV

RUN

S7-300 CPs:32768 S7-300:65534 字节 S7-400:65534 字节 S7-1500:65534 字节,已优化65535 字节

交换大量数据。例如,将带有测量值协议的数据块发送到 SCADA 系统进行进一步评估。

协调传输 (见上方内容)

✔ ✔ USEND/URCV快速无应答

S7-300:160 字节 S7-400:440 字节 S7-1500:920 字节

协调多个控制器,或将数据发送到多个控制器。例如将传感器的实际值分发给多个控制器。

不协调传输 (见上方内容)

✔ USEND_S/URCV_S

Page 71: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信

连接类型概述自动连接用于基本通信,例如针对用于工程作业或 HMI 编程设备的控制器,系统将保持自动连接。

编程连接编程连接非常灵活。使用 TSEND_C 和 TRCV_C 进行通信。系统自动打开和关闭连接。或者它们使用 SIMATIC S7-300/400 的指令 TCON、TDISCON、TSEND 和 TRCV。编程连接可用于例如分散连接等应用。

● 断开连接后,连接资源可继续使用。 ● 在 RUN 的用户程序中建立和删除编程连接。

配置连接如果连接断开,控制器将自动重新连接。在 SIMATIC STEP 7 的网络视图中创建并配置连接。

● 连接资源始终保持繁忙状态。 ● 在 STOP 中建立连接

Page 72: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 71 页

简单指令 高级指令 技术 通信

连接类型PG HM

I

TCP

ISO

-on-

TCP

UD

P

ISO

Mod

bus

TCP

FDL

S7-

通信

自动 X X - - - - - - -

编程 - - X X X - X - -

已配置 - X X X X X X X X

该表显示了连接类型与协议的相关性。

Page 73: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

PROFINET 和 PROFIBUS

✔ ✔ ✔ ✔ 仅安全功能:通过 PROFIBUS DP / PROFINET IO 进行故障安全数据传输 SENDDP

✔ ✔ ✔ ✔ 仅安全功能:通过 PROFIBUS DP / PROFINET IO 进行故障安全数据接收 RCVDP

“通信”章节中涉及的指令指令组 页 指令组 页 指令组 页PROFINET 和 PROFIBUS 78S7 通信 79开放式用户通信 81OPC UA 82Web 服务器 85故障安全 HMI 面板(仅使用安全程序) 85

Modbus TCP 86通信处理器 87S7-300C 功能 96与 iSlave/iDevice 进行通信 97PROFINET CBA 97MPI 通信 98

TeleService 98

Page 74: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 73 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

S7 通信

✔ ✔ ✔ ☑从远程 CPU 读取数据 应用示例:将 SIMATIC S7-1500 集成到带有 SIMATIC S7-300 的现有系统中。

GET

✔ ✔ ✔ ☑在远程 CPU 写入数据 应用示例:将 SIMATIC S7-1500 集成到带有 SIMATIC S7-300 的现有系统中。

PUT

✔ ✔ ☑ 未经协调发送数据给合作伙伴 (URCV) USEND

✔ ✔ ☑ 未经协调从合作伙伴 (USEND) 接收数据 URCV

✔ ✔ ☑ 分段将数据发送给合作伙伴 (URCV) BSEND

✔ ✔ ☑ 分段从合作伙伴 (BSEND) 接收数据 BRCV

✔ 在远程设备中执行重新启动(热启动)或冷启动 START

✔ 将远程设备停机 STOP

Page 75: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ 在远程设备中重启 RESUME

✔ 查询远程伙伴的设备状态 STATUS

✔ 接收远程设备状态变更 USTATUS

✔ 查询属于 SFB 实例的连接的状态 CONTROL

✔ 向打印机发送数据 PRINT

✔ 查询连接状态 C_CNTRL

✔ ✔ 仅安全功能:通过 S7 连接进行故障安全数据传输 SENDS7

✔ ✔ 仅安全功能:通过 S7 连接进行故障安全数据接收 RCVS7

其他指令 注意:由于只能使用一个参数,“S”代表短 (short)

✔ ✔ 从远程 CPU 读取数据 GET_S

✔ ✔ 在远程 CPU 写入数据 PUT_S

✔ ✔ 未经协调发送数据 USEND_S

✔ ✔ 未经协调接收数据 URCV_S

Page 76: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 75 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

开放式用户通信紧凑型指令 (…_C) 集成连接和断开

✔ ✔ 管理通信链接并通过以太网或 Profibus 发送数据 TSEND_C

✔ ✔ 管理通信链接并通过以太网或 Profibus 接收数据 TRCV_C

✔ ☑ 管理通信连接并传输电子邮件 TMAIL_C

其他指令

✔ ✔ ✔ ✔ 构建通信连接 TCON

✔ ✔ ✔ ✔ 删除通信连接 TDISCON

✔ ✔ ✔ ✔ 通过通信连接发送数据 TSEND

✔ ✔ ✔ ✔ 通过通信连接接收数据 TRCV

✔ ✔ 重置通信连接 T_RESET

✔ ✔ 检查连接 T_DIAG

Page 77: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ ☑ 配置接口 T_CONFIG

✔ ✔ 通过 SEND/RECEIVE 进行程序控制的 IP 配置和连接配置 IP_CONFIG

✔ ✔ ✔ ✔ 通过以太网 (UDP) 发送数据 TUSEND

✔ ✔ ✔ ✔ 通过以太网 (UDP) 接收数据 TURCV

✔ ✔ 更改 IP 配置参数 IP_CONF

✔ ✔ 使用 FETCH 和 WRITE 通过 TCP 交换数据 FW_TCP

✔ ✔ 使用 FETCH 和 WRITE 通过 ISO-on-TCP 交换数据 FW_IOT

OPC UAOPC UA 服务器

☑ 询问操作系统是否调用了服务器方法,并提供用于处理该方法的输入参数。 OPC_UA_ServerMethodPre

☑ 将有关方法处理的状态以及方法的输出参数是否有效的相关信息发送给操作系统。 OPC_UA_ServerMethodPost

Page 78: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 77 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

OPC UA 客户端

示意图顺序:

准备数据交换,设置会话

☑ 建立连接。 OPC_UA_Connect

☑ 查询 OPC UA 服务器中名称空间的当前索引 OPC_UA_NamespaceGetIndexList

☑ 在 OPC UA 服务器中注册 PLC 变量;获取用于读写访问的句柄 OPC_UA_NodeGetHandleList

Page 79: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

☑ 从变量名称(浏览名称)中找到节点 ID(节点参数)。 OPC_UA_TranslatePathList

☑ 在 OPC UA 服务器中注册 OPC UA 方法 OPC_UA_MethodGetHandleList

数据交换/数据访问

☑ 从 PLC 变量中读取值 OPC_UA_ReadList

☑ 在 PLC 变量中写入新值 OPC_UA_WriteList

☑ 调用方法 OPC_UA_MethodCall

结束数据交换,删除会话

☑ 结束到 OPC UA 服务器的连接 OPC_UA_Disconnect

☑ 释放方法调用的句柄 OPC_UA_MethodReleaseHandleList

诊断

☑ 读取连接状态并确定连接质量 OPC_UA_ConnectionGetStatus

OPC UA:CP 443-1 OPC UA

✔ 建立连接。 UA_Connect

Page 80: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 79 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ 查询 OPC UA 服务器中名称空间的当前索引 UA_NamespaceGetIndex

✔ 在 OPC UA 服务器中注册 PLC 变量;获取用于读写访问的句柄 UA_NodeGetHandleList

✔ 使用节点句柄列表从连接的服务器的节点中读取数据 UA_ReadList

✔ 使用节点句柄列表将数据写入连接的服务器的节点中 UA_WriteList

✔ 在 OPC UA 服务器中注册 PLC 变量;获取用于读写访问的句柄 UA_NodeReleaseHandleList

✔ 结束到 OPC UA 服务器的连接 UA_Disconnect

Web 服务器✔ ✔ ✔ ☑ 同步用户定义的网页 WWW

故障安全 HMI 面板(仅使用安全程序)

✔ ✔ ✔ ✔ 用于移动面板 277 F IWLAN: 通过 PROFIsafe 与连接的设备通信 F_FB_MP

Page 81: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ ✔ ✔ ✔ 用于移动面板 277 F IWLAN: 在有效范围内最多管理 4 个面板 F_FB_RNG_4

✔ ✔ ✔ 用于移动面板 277 F IWLAN: 在有效范围内最多管理 16 个面板

F_FB_RNG_16

✔ ✔ ✔ ✔ 用于第二代移动面板: 通过 PROFIsafe 与连接的设备通信 F_FB_KTP_

✔ ✔ ✔ ✔ 用于第二代移动面板: 在有效范围内管理面板

F_FB_KTP_RNG

Modbus TCP

✔ ✔ 作为 Modbus TCP 客户端通过 PROFINET 进行通信 MB_CLIENT

✔ ✔ 作为 Modbus TCP 服务器通过 PROFINET 进行通信 MB_SERVER

✔ ✔ 作为 Modbus TCP 冗余客户端通过 PROFINET 进行通信 MB_RED_CLIENT

✔ ✔ 作为 Modbus TCP 冗余服务器通过 PROFINET 进行通信 MB_RED_SERVER

Page 82: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 81 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ ✔ 在具有集成 PN 接口的 CPU 与支持 Modbus/TCP 协议的伙伴之间建立通信。 MODBUSPN

✔ ✔ 连接管理 TCP_COMM

✔ ✔ 作为 Modbus TCP 客户端通过以太网进行通信 MOD_CLI

✔ ✔ 作为 Modbus TCP 服务器通过以太网进行通信 MOD_SRV

通信处理器不适用于 S7-1500 软件控制器 CPU 150xS

点对点 (PtP) 通信

S7-300/400:ET 200SP CM PtP 的命令

✔ ✔ ✔ ✔ 组态点对点通信端口 S7-300/400:仅限于使用 ET 200SP CM PtP 时 Port_Config

✔ ✔ ✔ ✔ 组态 PtP 发送器 Send_Config

✔ ✔ ✔ ✔ 组态 PtP 接收器 Receive_Config

Page 83: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ ✔ ✔ ✔ 组态协议 3964 (R) P3964_Config

✔ ✔ ✔ ✔ 发送数据 Send_P2P

✔ ✔ ✔ ✔ 接收数据 Receive_P2P

✔ ✔ ✔ ✔ 删除接收缓冲区 Receive_Reset

✔ ✔ ✔ ✔ 读取状态 Signal_Get

✔ ✔ ✔ ✔ 设置伴随信号 Signal_Set

✔ ✔ ✔ ✔ 获取高级功能 Get_Features

✔ ✔ ✔ ✔ 设置高级功能 Set_Features

使用更少的内存和功能范围较小的指令。 建议:使用以上指令。不能远程在 ET 200 中使用这些指令。

✔ 动态组态通讯参数 PORT_CFG

✔ 动态组态串行传输参数 SEND_CFG

✔ 动态组态串行接收参数 RCV_CFG

✔ 传输发送缓冲区的数据 SEND_PTP

Page 84: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 83 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ 释放报文接收 RCV_PTP

✔ 删除接收缓冲区 RCV_RST

✔ 查询 RS-232 信号 SGN_GET

✔ 设置 RS-232 信号 SGN_SET

USS 通信

S7-300/400:ET200SP CM PtP 的命令

✔ 通过 USS 网络处理通信 USS_PORT

✔ ✔ ✔ ✔ 通过 USS 网络进行通信(16 个驱动器) USS_Port_Scan

✔ 通过 USS 网络进行通信(31 个驱动器) USS_Port_Scan_31

✔ 准备和显示驱动器数据 USS_Drive

✔ ✔ ✔ ✔ 与驱动器进行数据交换(16 个驱动器) USS_Drive_Control

✔ 与驱动器进行数据交换(31 个驱动器) USS_Drive_Control_31

✔ 从驱动器中读取参数 USS_RPM

✔ ✔ ✔ ✔ 从驱动器读取数据(16 个驱动器) USS_Read_Param

✔ 从驱动器读取数据(31 个驱动器) USS_Read_Param_31

Page 85: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ 更改驱动器中的参数 USS_WPM

✔ ✔ ✔ ✔ 更改驱动器中的数据(16 个驱动器) USS_Write_Param

✔ 更改驱动器中的数据(31 个驱动器) USS_Write_Param_31

MODBUS (RTU)

S7-300/400:ET200SP CM PtP 的命令

✔ ✔ ✔ ✔ 配置 Modbus 通信模块 Modbus_Comm_Load

✔ ✔ ✔ ✔ 作为 Modbus 主站通信 Modbus_Master

✔ ✔ ✔ ✔ 作为 Modbus 从站通信 Modbus_Slave

使用更少的内存和功能范围较小的指令。 建议:使用以上指令。不能远程通过一台 CM 或在 ET 200 中使用这些指令。

✔ 配置符合 Modbus RTU 协议的 PtP 模块端口 MB_COMM_LOAD

✔ 作为 Modbus 主站通过 PtP 端口通信 MB_MASTER

✔ 作为 Modbus 从站通过 PtP 端口通信 MB_SLAVE

Page 86: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 85 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

PtP 连接:CP 340

✔ 接收数据 P_RCV

✔ 发送数据 P_SEND

✔ 将消息文本和最多 4 个变量输出到打印机 P_PRINT

✔ 删除接收缓冲区 P_REST

✔ 读取 RS232C 接口上的伴随信号 V24_STAT_340

✔ 将伴随信号写入 RS232C 接口 V24_SET_340

PtP 连接:CP 341

✔ 接收数据或准备数据 P_RCV_RK

✔ 发送或提取数据 P_SND_RK

✔ 将消息文本和最多 4 个变量输出到打印机 P_PRT341

✔ 读取 RS232C 接口上的伴随信号 V24_STAT

✔ 将伴随信号写入 RS232C 接口 V24_SET

Page 87: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

PtP 连接:CP 440

✔ 接收数据 RECV_440

✔ 发送数据 SEND_440

✔ 删除接收缓冲区 RES_RECV

PtP 连接:CP 441

✔ 读取 RS232C 接口上的伴随信号 V24_STAT_441

✔ 将伴随信号写入 RS232C 接口 V24_SET_441

MODBUS 从站 (RTU)

✔ ✔ 用于 CP 341 的 MODBUS 从站的指令 MODB_341

✔ ✔ 用于 CP 441 的 MODBUS 从站的指令 MODB_441

Page 88: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 87 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

MODBUS:CP 343-1,CP 443-1

✔ ✔ 在 CP 和支持 OPEN MODBUS/TCP 协议的伙伴之间建立通信 MODBUSCP

✔ ✔ 作为 Modbus 客户端通信 MB_CPCLI

✔ ✔ 作为 Modbus 服务器通信 MB_CPSRV

ET 200S 串行接口(“S_”表示“串行”)

✔ ✔ ✔ 接收数据 S_RCV

✔ ✔ ✔ 发送数据 S_SEND

✔ ✔ ✔ 读取 RS 232C 接口上的伴随信号 S_VSTAT

✔ ✔ ✔ 写入 RS 232C 接口上的伴随信号 S_VSET

✔ ✔ ✔ 通过 XON/XOFF 对数据流控制进行参数化 S_XON

✔ ✔ ✔ 通过 RTS/CTS 对数据流控制进行参数化 S_RTS

✔ ✔ ✔ 通过自动操作RS 232C 伴随信号对数据流控制进行参数化 S_V24

✔ ✔ ✔ 用于 ET 200S 1SI 的 MODBUS 从站的指令 S_MODB

Page 89: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ ✔ ✔ 向 USS 从站发送数据 S_USST

✔ ✔ ✔ 从 USS 从站接收数据 S_USSR

✔ ✔ ☑ 初始化 USS S_USSI

SIMATIC NET CP

开放式用户通信

✔ ✔ 将数据传递给 CP,以通过组态连接进行传输 AG_SEND

✔ ✔ 将任务传递给 CP,以接受收到的数据 AG_RECV

✔ ✔ 使用 FETCH/WRITE 协议通过连接阻止数据交换 AG_LOCK

✔ ✔ 允许从外部访问控制器的用户存储区。然后可以通过 FETCH/WRITE 协议进行数据交换。 AG_UNLOCK

✔ ✔ 连接诊断 AG_CNTRL

✔ ✔ 连接诊断,建立连接,ping 请求 AG_CNTEX

Page 90: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 89 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

PROFIBUS DP

✔ ✔ 将数据传输到作为 DP 主站或 DP 从站的 CP DP_SEND

✔ ✔ 从作为 DP 主站或 DP 从站的 CP 接收数据 DP_RECV

✔ ✔ 要求诊断信息 DP_DIAG

✔ ✔ 将控制信息传输到 PROFIBUS-CP DP_CTRL

PROFINET IO

✔ ✔ 将数据传输到作为 IO 控制器或 IO 设备的 CP PNIO_SEND

✔ ✔ 从作为 IO 控制器或 IO 设备的 CP 接收数据 PNIO_RECV

✔ ✔ 在 IO 控制器中读取或写入数据记录 PNIO_RW_REC

✔ ✔ 通过作为 IO 控制器的 CP343-1 进行中断评估 PNIO_ALARM

Page 91: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

PROFIenergy

✔ ✔ 触发或结束节能中断 PE_START_END_CP

✔ ✔ 扩展触发或结束节能中断 PE_CMD_CP

✔ ✔ 在 PROFIenergy 设备中执行 IO 控制器的命令 PE_I_DEV_CP

✔ ✔ 将功率模块的开关设置传输到 ET 200S PE_DS3_Write_ET200_CP

其他指令

✔ ✔ 为 ERPC 通信使用逻辑触发器 LOGICAL_TRIGGER

✔ ✔ ☑ 在 FTP 服务器之间建立 FTP 连接 FTP_CMD

✔ ✔ 将连接数据从配置数据块传输到 CP IP_CONFIG

GPRSComm:CP 1242-7

✔ 建立使用 GSM 网络的连接 TC_CON

✔ 删除使用 GSM 网络的连接 TC_DISCON

Page 92: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 91 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ 通过 GSM 网络发送数据 TC_SEND

✔ 通过 GSM 网络接收数据 TC_RECV

✔ 将组态数据传输到 CP TC_CONFIG

S7-300C 功能

ASCII,3964®

✔ 发送数据 (ASCII,3964(R)) SEND_PTP_300C

✔ 接收数据 (ASCII,3964(R)) RCV_PTP_300C

✔ 重置输入缓冲区 (ASCII,3964(R)) RES_RCVB_300C

RK 512

✔ 发送数据 (RK 512) SEND_RK_300C

✔ 获取数据 (RK 512) FETCH_RK_300C

✔ 接收和准备数据 (RK 512) SERVE_RK_300C

与 iSlave/iDevice 进行通信

✔ ✔ 读取自身 S7 站内通信伙伴的数据 I_GET

Page 93: 参考手册 SIMATIC - Siemens

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ ✔ 将数据写入自身 S7 站内通信伙伴中 I_PUT

✔ ✔ 取消与自身 S7 站内通信伙伴的连接 I_ABORT

PROFINET CBA

✔ ✔ 更新用户程序接口的输入 PN_IN

✔ ✔ 更新用户程序接口的输出 PN_OUT

✔ ✔ 删除 DP 互连 PN_DP

MPI 通信 注意:“X_”代表 MPI 接口

✔ ✔ 将数据发送至自身 S7 站外的通信伙伴 X_SEND

✔ ✔ 接收自身 S7 站外的通信伙伴的数据 X_RCV

✔ ✔ 读取自身 S7 站外的通信伙伴的数据 X_GET

✔ ✔ 将数据写入自身 S7 站外的通信伙伴中 X_PUT

Page 94: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 93 页

简单指令 高级指令 技术 通信S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFC AWL (非 S7-1200) SCL

✔ ✔ 取消与自身 S7 站外的通信伙伴的连接 X_ABORT

远程服务✔ 传输电子邮件 TM_MAIL

✔ ✔ 建立与 PG/PC 的远程连接 PG_DIAL

✔ ✔ 建立与 AS 的远程连接 AS_DIAL

✔ ✔ 发送 SMS 消息 SMS_SEND

✔ ✔ 传输电子邮件 AS_MAIL

Page 95: 参考手册 SIMATIC - Siemens

可选指令

附录“可选指令”S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFCAWL

(非 S7-1200)

SCL

SIMATIC Ident✔ ✔ ✔ ✔ 读取收发器数据 Read

✔ ✔ ✔ ✔ 从代码读取系统读取数据 Read_MV

✔ ✔ ✔ ✔ 重置阅读器 Reset_Reader

✔ ✔ ✔ ✔ 在代码读取系统上设置程序 Set_MV_Program

✔ ✔ ✔ ✔ 将数据写入应答器 Write

状态查询

✔ ✔ ✔ ✔ 读取阅读器的状态 Reader_Status

✔ ✔ ✔ ✔ 读取应答器的状态 Tag_Status

高级功能

✔ ✔ ✔ ✔ 将配置数据加载到阅读器 Config_Download

✔ ✔ ✔ ✔ 保存阅读器的配置数据 Config_Upload

✔ ✔ ✔ ✔ 计算应答器数量 Inventory

Page 96: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 95 页

可选指令S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ ✔ 读取应答器的 TID 存储器中的数据 Read_TID

✔ ✔ ✔ ✔ 读取高频应答器的 UID Read_UID

✔ ✔ ✔ ✔ 打开/关闭 RF300 阅读器的天线 Set_ANT_RF300

✔ ✔ ✔ ✔ 设置阅读器 UHF 的参数 Set_Param

✔ ✔ ✔ ✔ 写入 UHF 应答器的 EPC-ID Write_EPC_ID

✔ ✔ ✔ ✔ 为接受培训的用户授权身份功能,可在数据结构中进行命令传输 Advanced_CMD

✔ ✔ ✔ ✔ 为专家授权身份功能,可使用所有命令,具有一切操作权利 Ident_Profile

遗留

✔ ✔ ✔ 读取应答器的 EPC 存储器中的数据 Read_EPC_Mem

✔ ✔ ✔ ✔ 写入 UHF 应答器的 EPC 存储器 Write_EPC_Mem

✔ ✔ ✔ ✔ 打开/关闭 RF620R/RF630R 的天线 Set_ANT_RF600

✔ ✔ ✔ ✔ 重置 MOBY D 阅读器 Reset_MOBY_D

Page 97: 参考手册 SIMATIC - Siemens

可选指令S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFCAWL

(非 S7-1200)

SCL

✔ ✔ ✔ ✔ 重置 MOBY U 阅读器 Reset_MOBY_U

✔ ✔ ✔ ✔ 重置 MV 代码阅读器 Reset_MV

✔ ✔ ✔ ✔ 重置 RF200 阅读器 Reset_RF200

✔ ✔ ✔ ✔ 重置 RF300 阅读器 Reset_RF300

✔ ✔ ✔ ✔ 重置 RF600 阅读器 Reset_RF600

✔ ✔ ✔ ✔ 专家可用的重置功能允许通用设置的参数 Reset_Univ

Energy Suite

✔ ✔ 计算机器和系统与运行状态相关的能量数据,以便根据测量规定进行统一的效率评估 EnS_EEm_Calc

✔ ✔ 根据测量规定在 CPU 的 SIMATIC 存储卡上以 CSV 格式创建效率协议 EnS_EEm_Report

SINAMICS✔ ✔ 作为基本定位器周期性控制 SINAMICS TO_BasicPos

Page 98: 参考手册 SIMATIC - Siemens

A5E36142426-AG 第 97 页

可选指令S7

-300

S7-4

00

S7-1

200

S7-1

500

说明 LAD / SFCAWL

(非 S7-1200)

SCL

✔ ✔作为基本定位器,使用标准报文 1111 周期性地激活 SINAMICS; 位置控制轴

SinaPos

✔ ✔ 使用标准报文 1 周期性地激活 SINAMICS; 转数控制轴 SinaSpeed

✔ ✔ 非周期性从/向 SINAMICS 变频器读取/写入最多 16 个参数 SinaPara

✔ ✔ 非周期性从/向 SINAMICS 变频器读取/写入一个参数 SinaParaS

✔ ✔ 通过标准报文 370 控制 SINAMICS S120 的供电单元 SinaInfeed

Page 99: 参考手册 SIMATIC - Siemens

Siemens AG Digital IndustriesPostfach 48 4890026 NurembergGERMANY

https://www.siemens.com/automation

Subject to change without prior notice. A5E36142426-AG© Siemens AG 2019


Recommended