第1章 S7-400组成与应用原理 1
1.1 S7-400的硬件组成 1
1.1.1 S7-400的基本结构 1
1.1.2 S7-400机架种类及作用 2
1.2 S7-400的通信功能 3
1.3 S7-400 CPU模块 3
1.4 电源模块 6
1.5 数字量模块 7
1.6 模拟量模块 9
1.7 其他模块 12
1.8 冗余设计的容错自动化系统S7-400H 12
1.9 安全型自动化系统S7-400F/FH 14
1.10 多CPU处理 16
第2章 S7-400编程语言及指令 18
2.1 S7-400的编程语言 18
2.1.1 PLC编程语言的国际标准 18
2.1.2 STEP7中的编程语言 19
2.2 S7-400 CPU的存储区 23
2.2.1 数制 23
2.2.2 基本数据类型 23
2.2.3 复合数据类型与参数类型 26
2.2.4 CPU的存储区分布 27
2.2.5 系统存储器 28
2.2.6 CPU中的寄存器 30
2.2.7 寻址方式 32
2.3 位逻辑指令 35
2.3.1 触点指令 35
2.3.2 输出类指令 38
2.3.3 其他指令 39
2.4 定时器与计数器指令 41
2.4.1 定时器指令 41
2.4.2 计数器指令 48
2.5 数据处理指令 51
2.5.1 装入指令与传送指令 52
2.5.2 比较指令 55
2.5.3 数据转换指令 57
2.6 数学运算指令 61
2.6.1 整数数学运算指令 62
2.6.2 浮点数数学运算指令 64
2.6.3 移位指令 69
2.6.4 循环移位指令 72
2.6.5 字逻辑运算指令 74
2.6.6 累加器指令 76
2.7 逻辑控制指令 78
2.7.1 跳转指令 78
2.7.2 梯形图中的状态位触点指令 82
2.7.3 循环指令 83
2.8 程序控制指令 83
2.8.1 逻辑块指令 83
2.8.2 主控继电器指令 86
2.8.3 数据块指令 88
2.8.4 梯形图的编程规则 89
第3章 软件使用基础 90
3.1 STEP7编程软件 90
3.1.1 STEP7的功能与使用条件 90
3.1.2 STEP7的硬件接口 91
3.1.3 STEP7的授权 91
3.1.4 STEP7的硬件组态与诊断功能 91
3.2 硬件组态与参数设置 92
3.2.1 项目的创建与项目的结构 92
3.2.2 硬件组态 94
3.2.3 CPU模块的参数设置 96
3.2.4 数字量输入模块的参数设置 101
3.2.5 数字量输出模块的参数设置 102
3.2.6 模拟量输入模块的参数设置 103
3.2.7 模拟量输出模块的参数设置 105
3.3 符号表与逻辑块 105
3.3.1 符号表 105
3.3.2 逻辑块 107
3.4 S7-PLCSIM仿真软件在程序调试中的应用 111
3.4.1 S7-PLCSIM的主要功能 111
3.4.2 快速入门 112
3.4.3 视图对象 114
3.4.4 仿真软件的设置与存档 115
3.5 程序的下载与上传 116
3.5.1 装载存储器与工作存储器 116
3.5.2 在线连接的建立与在线操作 117
3.5.3 下载与上传 119
3.6 用变量表调试程序 121
3.6.1 系统调试的基本步骤 121
3.6.2 变量表的基本功能 122
3.6.3 变量表的生成 122
3.6.4 变量表的使用 124
3.7 用程序状态功能调试程序 128
3.7.1 程序状态功能的启动与显示 128
3.7.2 单步与断点功能的使用 129
3.8 故障诊断 131
3.8.1 故障诊断的基本方法 132
3.8.2 模块信息在故障诊断中的应用 132
3.8.3 用快速视窗和诊断视窗诊断故障 135
第4章 组态软件WinCC与PLC通信 137
4.1 组态软件概述 137
4.1.1 什么是组态软件 137
4.1.2 组态软件的功能 137
4.1.3 常用组态软件 137
4.1.4 WinCC组态软件及安装 138
4.1.5 WinCC安装 140
4.2 WinCC的功能部件及应用 146
4.2.1 WinCC软件运行 146
4.2.2 变量管理 148
4.2.3 创建过程画面 154
4.2.4 对象的使用 156
4.3 过程及归档 164
4.3.1 过程值归档 164
4.3.2 组态过程值归档 165
4.3.3 过程值归档的显示 169
4.4 消息系统 173
4.4.1 报警记录编辑器 173
4.4.2 报警记录的组态 174
4.4.3 报警消息输出 177
4.4.4 报警消息应用举例 179
4.5 报表系统 181
4.5.1 页面布局编辑器 181
4.5.2 组态报警消息报表布局 182
4.5.3 组态消息报表 183
4.6 ANSI-C脚本 187
4.6.1 动作与函数 187
4.6.2 ANSI-C脚本应用举例 188
第5章 S7-400用户程序结构 192
5.1 用户程序的基本结构 192
5.1.1 用户程序中的块 192
5.1.2 用户程序使用的堆栈 195
5.1.3 线性化编程与结构化编程 196
5.2 功能块和功能的生成与调用 198
5.2.1 项目的创建和用户程序结构 198
5.2.2 符号表与变量声明表 199
5.2.3 功能块与功能 201
5.2.4 功能块与功能的调用 202
5.2.5 时间标记冲突与一致性检查 204
5.3 数据块 205
5.3.1 数据块中的数据类型 205
5.3.2 数据块的生成与使用 206
5.4 多重背景 207
5.4.1 多重背景功能块与多重背景数据块 208
5.4.2 在OB1中调用多重背景 209
5.5 组织块与中断处理 210
5.5.1 中断的基本概念 210
5.5.2 组织块的变量声明表 212
5.5.3 日期时间中断组织块 213
5.5.4 延时中断组织块 215
5.5.5 循环中断组织块 217
5.5.6 硬件中断组织块 219
5.5.7 启动时使用的组织块 221
5.5.8 异步错误组织块 222
5.5.9 同步错误组织块 225
5.5.10 背景组织块 227
第6章 计算机通信网络与S7-400的通信功能 228
6.1 计算机通信方式与串行通信接口 228
6.1.1 计算机的通信方式 228
6.1.2 串行通信接口的标准 230
6.2 计算机通信的国际标准 231
6.2.1 开放系统互联模型 231
6.2.2 IEEE 802通信标准 232
6.2.3 现场总线及其国际标准 233
6.3 S7-400的通信功能 235
6.3.1 工厂自动化网络结构 235
6.3.2 S7-400的通信网络 236
6.3.3 S7通信的分类 238
6.4 MPI网络与全局数据通信 239
6.4.1 MNPI网络与全局数据包 239
6.4.2 MPI网络的组态 239
6.4.3 全局数据表 240
6.4.4 事件驱动的全局数据通信 243
6.4.5 不用连接组态的MPI通信 244
6.5 PROFIBUS的结构与硬件 244
6.5.1 PROFIBUS的组成 245
6.5.2 PROFIBUS的特理层 246
6.5.3 PROFIBUS-DP设备的分类 248
6.5.4 PROFIBUS通信处理器 249
6.6 PROFIBUS的通信协议 250
6.6.1 PROFIBUS的数据链路层 250
6.6.2 PROFIBUS-DP 252
6.6.3 PROFLNet 254
6.7 基于组态的PROFIBUS通信 256
6.7.1 PROFIBUS-DP从站的分类 256
6.7.2 PROFIBUS-DP网络的组态 257
6.7.3 主站与智能从站主从通信方式的组态 260
6.7.4 直接数据交换通信方式的组态 262
6.8 用于PROFIBUS通信的系统功能与系统功能块 265
6.8.1 用于PROFIBUS通信的系统功能与系统功能块 265
6.8.2 用SFC14和SFC15传输连续的数据 267
6.8.3 分布式I/O触发主站的硬件中断 270
6.8.4 一组从站的输出同步与输入锁定 272
6.9 点对点通信 278
6.9.1 点对点通信处理器与集成的点对点通信接口 278
6.9.2 ASCII Driver通信协议 278
6.9.3 3964(R)通信协议 280
6.9.4 用于CPU31XC-2PtP点对点通信的系统功能块 283
6.9.5 用于点对点通信处理器的功能块 285
6.10 PRODAVE通信软件在点对点通信中的应用 286
6.10.1 PRODAVE简介 286
6.10.2 PRODAVE的硬件配置 287
6.10.3 建立与断开连接 288
6.10.4 PRODAVE的通信函数 289
6.10.5 PRODAVE在水轮发电机组监控系统中的应用 290
第7章 S7-400 PLC应用实例 292
7.1 S7-400冗余系统在某电厂中的应用 292
7.1.1 系统介绍 292
7.1.2 控制系统结构 293
7.1.3 控制系统完成功能 294
7.2 S7-400 PLC及WinCC实现高速数据采集 299
7.2.1 问题的提出 299
7.2.2 基本思路 300
7.2.3 运用WinCC+S7-400实现高速数据采集 300
7.2.4 效果 304
7.3 西门子PLC远程访问诊断方案 306
7.3.1 基于Modem拨号的TeleService 306
7.3.2 基于互联网的TeleService 306
7.4 用STEP7中的SFB41/FB41、SFB42/FB42、SFB43/FB43实现PID控制 315
7.4.1 概述 315
7.4.2 PID系统控制器的选择 316
7.4.3 布线 318
7.4.4 参数赋值工具介绍 318
7.4.5 在用户程序中实现 320
7.4.6 功能块介绍 320
7.5 S7-400在甲醇项目中实现首发报警功能 340
7.5.1 概述 340
7.5.2 控制系统介绍 340
7.5.3 控制系统完成的功能 340
7.5.4 首发报警的实现 341
7.5.5 小结 342
7.6 西门子开放式IE通信在水电站监控系统中的应用 343
7.6.1 引言 343
7.6.2 简介 343
7.6.3 计算机监控系统结构配置 344