[西门子]SIMATIC S7-1200-1500 编程指南.pdf
目录
法律信息 …………………………………………………………………………………………………………. 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
目录
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 * …………………………………………………. 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
目录
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
请登录后查看评论内容