目录 1
前言 1
第1章 概述 1
1.1 PLC的基本概念 1
1.1.1 模块式PLC的基本结构 1
1.1.2 PLC的特点 2
1.1.3 PLC的应用领域 3
1.1.4 怎样下载西门子公司PLC的资料和软件 4
1.2 PLC的工作原理 4
1.2.1 逻辑运算 4
1.2.2 PLC的循环处理过程 5
1.2.3 PLC的工作原理 7
1.3 习题 9
第2章 S7-300/400的硬件结构与性能指标 10
2.1 S7-300系列PLC简介 10
2.1.1 S7-300的概况 10
2.1.2 S7-300的系统结构 11
2.1.3 I/O模块地址的确定 13
2.1.4 模块诊断与过程中断 14
2.2 S7-300的CPU模块 15
2.2.1 CPU模块的元件 15
2.2.2 存储器 17
2.2.3 CPU模块简介 18
2.3 S7-300的输入/输出模块 19
2.3.1 数字量输入模块 19
2.3.2 数字量输出模块 20
2.3.3 数字量输入/输出模块 20
2.3.4 模拟量输入模块 21
2.3.5 将模拟量输入模块的输出值转换为实际的物理量 23
2.3.6 模拟量输出模块 24
2.3.7 模拟量模块的诊断与中断 25
2.3.8 EX系列与F系列输入,输出模块 26
2.4 S7-300的其他模块 26
2.5.1 S7-400的基本结构与特点 28
2.5 S7-400系列PLC的硬件组成 28
2.5.2 机架与接口模块 30
2.5.3 S7-400的通信功能 31
2.5.4 冗余设计的容错自动化系统S7-400H 31
2.5.5 安全型自动化系统S7-400F/FH 32
2.5.6 多CPU处理 33
2.5.7 CPU模块的元件 33
2.5.8 CPU模块与电源模块 34
2.5.9 输入/输出模块 35
2.5.10 功能模块 36
2.6 ET 200分布式I/O 37
2.6.1 ET 200的特点 37
2.6.2 ET 200的分类 38
2.7 习题 38
第3章 S7-300/400的编程语言与指令系统 40
3.1 S7-300/400的编程语言 40
3.1.1 PLC编程语言的国际标准 40
3.1.2 STEP 7中的编程语言 41
3.2 S7-300/400 CPU的存储区 43
3.2.1 数制 43
3.2.2 基本数据类型 44
3.2.3 复合数据类型与参数类型 46
3.2.4 CPU的存储区分布 46
3.2.5 系统存储器 47
3.2.6 CPU中的寄存器 49
3.3 位逻辑指令 51
3.3.1 触点指令 52
3.3.2 输出类指令 53
3.3.3 其他指令 54
3.4 定时器与计数器指令 56
3.4.1 定时器指令 56
3.4.2 计数器指令 61
3.5 数据处理指令 63
3.5.1 装入指令与传送指令 64
3.5.2 比较指令 67
3.5.3 数据转换指令 68
3.6.1 整数数学运算指令 72
3.6 数学运算指令 72
3.6.2 浮点数数学运算指令 74
3.6.3 移位与循环移位指令 77
3.6.4 字逻辑运算指令 80
3.6.5 累加器指令 81
3.7 逻辑控制指令 83
3.7.1 跳转指令 83
3.8 程序控制指令 86
3.8.1 逻辑块指令 86
3.7.3 循环指令 86
3.7.2 梯形图中的状态位触点指令 86
3.8.2 主控继电器指令 89
3.8.3 数据块指令 90
3.8.4 梯形图的编程规则 91
3.9 习题 92
4.1.3 STEP 7的授权 94
4.1.2 STEP 7的硬件接口 94
4.1 STEP 7编程软件简介 94
4.1.1 STEP 7概述 94
第4章 STEP 7编程软件的使用方法 94
4.1.4 STEP 7的编程功能 95
4.1.5 STEP 7的硬件组态与诊断功能 95
4.2 硬件组态与参数设置 96
4.2.1 项目的创建与项目的结构 96
4.2.2 硬件组态 97
4.2.3 CPU模块的参数设置 99
4.2.4 数字量输入模块的参数设置 101
4.2.5 数字量输出模块的参数设置 101
4.2.6 模拟量输入模块的参数设置 102
4.2.7 模拟量输出模块的参数设置 104
4.3 符号表与逻辑块 104
4.3.1 符号表 104
4.3.2 逻辑块 105
4.4.1 S7-PLCSIM的主要功能 108
4.4.2 使用S7-PLCSIM仿真软件调试程序的步骤 108
4.4 S7-PLCSIM仿真软件在程序调试中的应用 108
4.4.3 应用举例 109
4.4.4 视图对象与仿真软件的设置与存档 110
4.5 STEP 7与PLC的在线连接与在线操作 111
4.5.1 装载存储器与工作存储器 111
4.5.2 在线连接的建立与在线操作 111
4.5.3 下载与上载 112
4.6.2 变量表的基本功能 113
4.6.1 系统调试的基本步骤 113
4.6 用变量表调试程序 113
4.6.3 变量表的生成 114
4.6.4 变量表的使用 115
4.7 用程序状态功能调试程序 116
4.7.1 程序状态功能的启动与显示 116
4.7.2 单步与断点功能的使用 117
4.8 故障诊断 118
4.8.1 故障诊断的基本方法 119
4.8.2 模块信息在故障诊断中的应用 119
4.8.3 用快速视窗和诊断视窗诊断故障 120
4.9 显示参考数据 121
4.9.1 参考数据的生成与显示 121
4.9.2 交叉参考表 122
4.9.3 程序结构 122
4.9.4 其他参考数据 123
4.10 习题 123
5.1.1 用经验法设计梯形图 125
5.1 梯形图的经验设计法与继电器电路转换法 125
设计方法 125
第5章 数字量控制系统梯形图 125
5.1.2 根据继电器电路图设计梯形图 128
5.2 顺序控制设计法与顺序功能图 132
5.2.1 顺序控制设计法 132
5.2.2 步与动作 133
5.2.3 有向连线与转换 134
5.2.4 顺序功能图的基本结构 135
5.2.5 顺序功能图中转换实现的基本规则 137
5.3.1 设计顺序控制梯形图的一些基本问题 139
5.2.6 顺序控制设计法的本质 139
5.3 使用起保停电路的顺序控制梯形图编程方法 139
5.3.2 单序列的编程方法 141
5.3.3 选择序列与并行序列的编程方法 142
5.3.4 应用举例 144
5.4 使用置位复位指令的顺序控制梯形图编程方法 146
5.4.1 单序列的编程方法 146
5.4.2 选择序列与并行序列的编程方法 148
5.4.3 应用举例 149
5.5 具有多种工作方式的系统的顺序控制梯形图编程方法 150
5.5.1 机械手控制系统简介 150
5.5.2 使用起保停电路的编程方法 151
5.5.3 使用置位复位指令的编程方法 155
5.6 顺序功能图语言S7 Graph的应用 156
5.6.1 S7 Graph语言概述 156
5.6.2 使用s7 Graph编程的例子 158
5.6.3 顺序控制器的运行模式与监控操作 162
5.6.4 顺序控制器中的动作 163
5.6.6 用S7 Graph编写具有多种工作方式的控制程序 165
5.6.5 顺序控制器中的条件 165
5.7 习题 169
第6章 S7-300/400的用户程序结构 172
6.1 用户程序的基本结构 172
6.1.1 用户程序中的块 172
6.1.2 用户程序使用的堆栈 175
6.1.3 线性化编程与结构化编程 176
6.2.1 发动机控制系统的用户程序结构 177
6.2 功能块与功能的生成与调用 177
6.2.2 符号表与变量声明表 178
6.2.3 功能块与功能 181
6.2.4 功能块与功能的调用 181
6.2.5 时间标记冲突与一致性检查 183
6.3 数据块 184
6.3.1 数据块中的数据类型 184
6.3.2 数据块的生成与使用 185
6.4 多重背景 186
6.4.1 多重背景功能块与多重背景数据块 187
6.4.2 在OBI中调用多重背景 188
6.5 组织块与中断处理 189
6.5.1 中断的基本概念 189
6.5.2 组织块的变量声明表 190
6.5.3 日期时间中断组织块 191
6.5.4 延时中断组织块 193
6.5.5 循环中断组织块 195
6.5.6 硬件中断组织块 196
6.5.7 启动时使用的组织块 198
6.5.8 异步错误组织块 200
6.5.9 同步错误组织块 202
6.5.10 背景组织块 204
6.6 习题 205
第7章 计算机通信网络与S7-300/400的通信功能 206
7.1 计算机通信方式与串行通信接口 206
7.1.1 计算机的通信方式 206
7.1.2 串行通信接口的标准 207
7.2.1 开放系统互联模型 208
7.2 计算机通信的国际标准 208
7.2.2 IEEE 802通信标准 209
7.2.3 现场总线及其国际标准 211
7.3 S7-300/400的通信功能 212
7.3.1 工厂自动化网络结构 212
7.3.2 S7-300/400的通信网络 213
7.3.3 S7通信的分类 215
7.4.2 MPI网络的组态 216
7.4 MPI网络与全局数据通信 216
7.4.1 MPI网络与全局数据包 216
7.4.3 全局数据表 217
7.4.4 事件驱动的全局数据通信 220
7.4.5 不用连接组态的MPI通信 220
7.5 PROFIBUS的结构与硬件 221
7.5.1 PROFIBUS的组成 221
7.5.2 PROFIBUS的物理层 222
7.5.3 PROFIBUS-DP设备的分类 224
7.5.4 PROFIBUS通信处理器 225
7.6 PROFIBUS的通信协议 226
7.6.1 PROFIBUS的数据链路层 226
7.6.2 PROFIBUS-DP 228
7.6.3 PROFINet 230
7.7 基于组态的PROFIBUS通信 231
7.7.1 PROFIBUS-DP从站的分类 232
7.7.2 PROFIBUS-DP网络的组态 232
7.7.3 主站与智能从站主从通信方式的组态 235
7.7.4 直接数据交换通信方式的组态 237
7.8 用于PROFIBUS通信的系统功能与系统功能块 240
7.8.1 用于PROFIBUS通信的系统功能与系统功能块 240
7.8.2 用SFC 14和SFC 15传输连续的数据 241
7.8.3 分布式I/O触发主站的硬件中断 244
7.8.4 一组从站的输出同步与输入锁定 246
7.9 点对点通信 251
7.9.1 点对点通信处理器与集成的点对点通信接口 251
7.9.2 ASCII Driver通信协议 252
7.9.3 3964(R)通信协议 253
7.9.4 用于CPU 3IxC-2PtP点对点通信的系统功能块 256
7.9.5 用于点对点通信处理器的功能块 258
7.10 PRODAVE通信软件在点对点通信中的应用 259
7.10.1 PRODAVE简介 259
7.10.2 PRODAVE的硬件配置 260
7.10.3 建立与断开连接 260
7.10.4 PRODAVE的通信函数 261
7.11 习题 263
7.10.5 PRODAVE在水轮发电机组监控系统中的应用 263
第8章 S7-300/400在模拟量闭环控制中的应用 265
8.1 闭环控制与PID控制器 265
8.1.1 模拟量闭环控制系统 265
8.1.2 闭环控制反馈极性的确定 266
8.1.3 PID控制器的优点 267
8.1.4 PID控制器的数字化 267
8.2.1 设定值与过程变量的处理 269
8.1.5 使用系统功能块实现闭环控制 269
8.2 连续PID控制器SFB 41 269
8.2.2 PID控制算法 271
8.2.3 控制器输出值的处理 271
8.2.4 SFB 4l的参数 272
8.3 步进PID控制器SFB 42 273
8.3.1 步进PID控制器的结构 273
8.3.2 步进控制器的功能分析 275
8.4 脉冲发生器SFB 43 276
8.4.1 脉冲发生器的功能与结构 276
8.4.2 三级控制器 278
8.4.3 二级控制器 278
8.5 PID控制器的参数整定方法 279
8.5.1 PID制器的参数与系统动静态性能的关系 279
8.5.2 确定PID控制器参数初值的工程方法 279
8.6 习题 280
A.1 STEP 7编程软件与仿真软件应用实验 282
附录A 实验指导书 282
附录 282
A.2 顺序控制程序的编程实验 283
A.3 复杂的顺序控制程序的编程实验 283
A.4 具有多种工作方式的系统的顺序控制程序的编程实验 283
A.5 顺序功能图语言S7 Graph的编程实验 284
A.8 循环中断实验 285
A.9 硬件中断实验 285
A.7 延时中断实验 285
A.6 日期时间中断实验 285
A.10 同步错误中断实验 286
A.11 程序结构实验 286
A.12 MPI网络全局数据通信的组态实验 287
A.13 DP网络主从通信的组态实验 287
附录B S7-300/400的指令一览表 287
附录C 组织块、系统功能与系统功能块—览表 292
附录D 常用缩写词 298
参考文献 301