![](https://csdnimg.cn/release/download_crawler_static/89322551/bg1.jpg)
SIMATIC S7-1200/1500
编程指南
TIA Portal
https://support.industry.siemens.com/cs/cn/zh/view/90885040
西门子工
业在线支
持
![](https://csdnimg.cn/release/download_crawler_static/89322551/bg2.jpg)
法律信息
Programming Guideline for S7-1200/1500
条目 ID: 81318674, V1.6, 12/2018
2
Siemens AG 2018 All rights reserved
法律信息
应用实例的使用
应用实例说明了通过文本、图形和/或软件模块形式的几个组件的交互来实现自动化任务的解
决方案。应用实例是由西门子公司和/或西门子公司的子公司(“西门子”)提供的免费服
务。它们是非约束性的,并且不对配置和设备的完整性或功能性做出任何声明。应用程序示例
仅对典型任务提供帮助;它们不构成针对客户的解决方案。您自己有责任按照适用的规定正确
和安全地操作产品,并必须检查相应应用示例的功能,并为您的系统定制应用示例。
西门子授予您非排他性、不可再授权和不可转让的权利,让经过技术培训的人员使用应用示
例。对应用程序示例的任何更改均由您负责。与第三方共享应用程序示例或复制应用程序示例
或摘录,只有在与您自己的产品组合时才允许。应用实例不要求经过收费产品的惯常测试和质
量检验,它们可能有功能和性能缺陷以及错误。您有责任以可能发生的任何故障不会导致财产
损失或人员伤害的方式使用它们。
免责声明
无论何种法律原因,西门子均不承担任何责任,包括但不限于对应用示例的可用性、有效性、
完整性和无缺陷以及相关信息、配置和性能数据以及由此造成的任何损害承担任何责任。这个
不适用强制责任的情况下,例如,根据《德国产品责任法》,或在存在故意、重大过失、应负
责任的生命损失、身体伤害或健康损害、不遵守保证、欺诈性不披露缺陷或应负责任的重大合
同义务的情况下。但是,因违反重大合同义务而引起的损害索赔应限于典型协议类型的可预见
损害,除非责任是由于故意或重大过失或基于生命损失、身体伤害或健康损害而引起的。上述
条款并不意味着对损害贵方利益的举证责任有任何改变。除非西门子被强制承担责任,否则贵
方应向西门子赔偿目前或未来第三方就此提出的索赔。
通过使用应用实例,您承认西门子不承担超出上述责任条款的任何损害。
其他信息
西门子保留在不另行通知的情况下随时对应用实例进行更改的权利。如果应用示例中的建议与
其他西门子出版物(如目录)之间存在差异,应以其他文件的内容为准。
西门子使用条款(https://support.industry.siemens.com)也应适用。
安全信息
西门子提供工业安全功能的产品和解决方案,支持工厂、系统、机器和网络的安全运行。
为了保护工厂、系统、机器和网络免受网络威胁,有必要实施并持续维护一个整体的、最先进
的工业安全概念。西门子的产品和解决方案构成了这一概念的一个要素。
客户有责任防止未经授权访问其工厂、系统、机器和网络。该等系统、机器及组件只应在有必
要及有适当的保安措施(例如防火墙及/或网络分段)的情况下,才可连接到企业网络或互联
网。
有关可能实施的工业安全措施的更多信息,请访问
https://www.siemens.com/industrialsecurity
西门子的产品和解决方案不断发展,使其更加安全。西门子强烈建议,一旦产品更新可用,就
应用最新的产品版本。使用不再受支持的产品版本,以及未能应用最新更新,可能增加客户遭
受网络威胁的风险。
要了解产品更新,请订阅西门子工业安全 RSS: https://www.siemens.com/industrialsecurity
![](https://csdnimg.cn/release/download_crawler_static/89322551/bg3.jpg)
目录
Programming Guideline for S7-1200/1500
条目 ID: 81318674, V1.6, 12/2018
3
Siemens AG 2018 All rights reserved
目录
法律信息 ......................................................................................................................... 2
1 前言 ...................................................................................................................... 7
2 S7-1200/S7-1500 创新 ........................................................................................ 9
2.1 介绍 ...................................................................................................... 9
2.2 术语 ...................................................................................................... 9
2.3 编程语言 ............................................................................................. 11
2.4 优化的机器代码 .................................................................................. 12
2.5 创建块 ................................................................................................. 12
2.6 优化块 ................................................................................................. 13
2.6.1 S7-1200:优化块的结构 ..................................................................... 14
2.6.2 S7-1500:优化块的结构 ..................................................................... 14
2.6.3 适用于 S7-1500 的处理器优化数据存储 ............................................. 15
2.6.4 优化和非优化变量之间的转换 ............................................................ 19
2.6.5 优化和非优化访问的块之间的参数传输 .............................................. 19
2.6.6 使用优化数据通信 ............................................................................... 20
2.7 块属性 ................................................................................................. 21
2.7.1 块大小 ................................................................................................. 21
2.7.2 组织块(OB)数量 .................................................................................. 21
2.7.3 块接口–隐藏块参数(V14 或更高版本) ............................................ 21
2.8 S7-1200/1500 的新数据类型 .............................................................. 22
2.8.1 基本数据类型 ...................................................................................... 23
2.8.2 数据类型 Date_Time_Long ................................................................ 23
2.8.3 其他时间数据类型 ............................................................................... 24
2.8.4 Unicode 数据类型 ............................................................................... 24
2.8.5 数据类型 VARIANT(S7-1500 和 S7-1200 的 V4.1 以上版本) ........ 25
2.9 指令 .................................................................................................... 28
2.9.1 MOVE 指令 ......................................................................................... 28
2.9.2 VARIANT 指令(S7-1500 和 S7-1200 的 V4.1 以上版本) ................ 30
2.9.3 RUNTIME 指令 ................................................................................... 31
2.9.4 PLC 数据类型的变量比较(V14 或更高版本)................................... 31
2.9.5 多重赋值(V14 或更高版本) ............................................................ 32
2.10 符号和注释 ......................................................................................... 33
2.10.1 编程编辑器 ......................................................................................... 33
2.10.2 监控表中的注释行 ............................................................................... 34
2.11 系统常量 ............................................................................................. 34
2.12 用户常量 ............................................................................................. 36
2.13 控制器和 HMI 变量的内部参考 ID ....................................................... 37
2.14 发生错误时的 STOP 模式 ................................................................... 38
3 通用编程 ............................................................................................................ 40
3.1 操作系统与用户程序 ........................................................................... 40
![](https://csdnimg.cn/release/download_crawler_static/89322551/bg4.jpg)
目录
Programming Guideline for S7-1200/1500
条目 ID: 81318674, V1.6, 12/2018
4
Siemens AG 2018 All rights reserved
3.2 程序块 ................................................................................................. 40
3.2.1 组织块(OB) ......................................................................................... 41
3.2.2 函数(FC) ............................................................................................. 43
3.2.3 函数块(FB) .......................................................................................... 45
3.2.4 实例 .................................................................................................... 46
3.2.5 多重实例 ............................................................................................. 47
3.2.6 作为参数的实例传递 (V14) ................................................................. 48
3.2.7 全局数据块(DB) .................................................................................. 50
3.2.8 下载但不重新初始化 ........................................................................... 51
3.2.9 块的可重用性 ...................................................................................... 55
3.2.10 块的自动编号 ...................................................................................... 56
3.3 块的接口类型 ...................................................................................... 56
3.3.1 按值调用 ............................................................................................. 57
3.3.2 按引用调用 ......................................................................................... 57
3.3.3 参数传递概述 ...................................................................................... 57
3.4 存储概念 ............................................................................................. 58
3.4.1 块接口的数据交换 ............................................................................... 58
3.4.2 全局存储 ............................................................................................. 59
3.4.3 本地存储 ............................................................................................. 60
3.4.4 存储区域访问速度 ............................................................................... 60
3.5 保持性 ................................................................................................. 62
3.6 符号寻址 ............................................................................................. 65
3.6.1 符号寻址而非绝对寻址 ....................................................................... 65
3.6.2 ARRAY 数据类型和间接寻址访问 ...................................................... 66
3.6.3 形参 Array [*] (V14 或更高版本) .......................................................... 68
3.6.4 STRUCT 数据类型和 PLC 数据类型 ................................................... 68
3.6.5 访问具有 PLC 数据类型的 I/O 区域 .................................................... 71
3.6.6 片段访问 ............................................................................................. 72
3.6.7 LAD 和 FBD 的 SCL 网络(V14 及更高版本) ........................................ 73
3.7 库 ........................................................................................................ 74
3.7.1 库类型和库元素 .................................................................................. 75
3.7.2 类型概念 ............................................................................................. 76
3.7.3 CPU 和 HMI 中典型对象之间的差异 ................................................... 76
3.7.4 块的版本控制 ...................................................................................... 77
3.8 提高硬件中断的性能 ........................................................................... 82
3.9 其他性能建议 ...................................................................................... 83
3.10 SCL 编程语言:提示和技巧 ............................................................... 83
3.10.1 使用调用模板 ...................................................................................... 83
3.10.2 哪些指令参数是强制性的? ................................................................ 84
3.10.3 使用整个变量名称进行拖放 ................................................................ 84
3.10.4 使用关键字 REGION(V14 或更高版本)进行结构化 ........................ 85
3.10.5 正确使用 FOR、REPEAT 和 WHILE 循环 .......................................... 86
3.10.6 高效地使用 CASE 指令 ....................................................................... 87
3.10.7 不能操作循环计数器的 FOR 循环 ....................................................... 87
3.10.8 FOR 向后循环 ..................................................................................... 88
3.10.9 轻松创建调用实例 ............................................................................... 88
3.10.10 时间变量的处理 .................................................................................. 88
3.10.11 不必要的 IF 指令 ................................................................................. 90
![](https://csdnimg.cn/release/download_crawler_static/89322551/bg5.jpg)
目录
Programming Guideline for S7-1200/1500
条目 ID: 81318674, V1.6, 12/2018
5
Siemens AG 2018 All rights reserved
4 独立于硬件的编程 .............................................................................................. 91
4.1 S7-300/400 和 S7-1200/1500 的数据类型 .......................................... 91
4.2 不使用位存储器而使用全局数据块 ..................................................... 93
4.3 “循环位”编程 ..................................................................................... 93
5 TIA 博途中的 STEP 7 Safety ............................................................................ 94
5.1 介绍 .................................................................................................... 94
5.2 术语 .................................................................................................... 94
5.3 安全程序的组成部分 ........................................................................... 95
5.4 F-运行组 ............................................................................................. 95
5.5 F 签名 ................................................................................................. 96
5.6 在 F-I/O 上分配 PROFIsafe 地址 ........................................................ 97
5.7 F-I/O 评估 ........................................................................................... 98
5.8 值状态(S7-1200F/1500F) ................................................................... 98
5.9 数据类型 ............................................................................................. 99
5.9.1 概述 .................................................................................................... 99
5.9.2 隐式转换 ........................................................................................... 100
5.10 F-compliant 型 PLC 数据类型 ........................................................... 101
5.11 TRUE/FALSE ................................................................................... 103
5.12 优化编译和程序运行 ......................................................................... 104
5.12.1 避免时间处理块:TP、TON、TOF .................................................. 105
5.12.2 避免深层调用层次结构 ..................................................................... 105
5.12.3 避免 JMP/LABEL 结构 ...................................................................... 106
5.13 标准程序与 F 程序之间的数据交换 ................................................... 106
5.14 测试安全程序 .................................................................................... 107
5.15 发生 F 错误时的 STOP 模式 ............................................................. 108
5.16 安全程序的移植 ................................................................................ 108
5.17 有关安全的常规建议 ......................................................................... 108
6 使用用户程序自动生成可视化 .......................................................................... 109
6.1 介绍 .................................................................................................. 109
6.2 自动生成的工作原理 ......................................................................... 109
6.3 控制 HMI 生成器 ............................................................................... 110
6.3.1 使用网络注释进行控制 ..................................................................... 111
6.3.2 使用 SiVArc 变量进行控制 ................................................................ 111
6.4 附加建议 ........................................................................................... 112
7 最重要建议 ....................................................................................................... 114
8 附录 .................................................................................................................. 115
8.1 服务和支持 ....................................................................................... 115
8.2 链接和文献 ....................................................................................... 116