目 录
第 1 章 公有元素 1
1.1 控制器模型 1
1.1.1 软件模型 1
1.1.2 通信模型 3
1.1.3 功能模型 5
1.2 标准符号 6
1.2.1 字符集 6
1.2.2 标识符 6
1.2.3 分界符 7
1.2.4 关键字 8
1.2.5 空格和注释 9
1.3 数据标称 9
1.3.1 数值标称 10
1.3.2 字符串标称 10
1.3.3 时间标称 11
1.4 数据类型 12
1.4.1 基本数据类型 12
1.4.2 一般数据类型 13
1.4.3 衍生数据类型 14
1.4.4 取值范围和初始化 18
1.4.5 衍生类型 19
1.5 变量 21
1.5.1 变量的表示 21
1.5.2 变量的属性 23
习题 1 24
第 2 章 程序组织单元 25
2.1 函数 25
2.1.1 函数的表示 25
2.1.2 函数的附加属性 26
2.1.3 用户自定义函数 28
2.2 标准函数 29
2.2.1 类型转换类函数 29
2.2.2 数值类函数 30
2.2.3 算术类函数 31
2.2.4 位串类函数 32
2.2.5 选择和比较类函数 34
2.2.6 字符串类函数 36
2.2.7 时间数据类型函数 38
2.2.8 枚举数据类型函数 39
2.3 功能块 40
2.3.1 功能块的表示 40
2.3.2 功能块的特性 43
2.4 标准功能块 44
2.4.1 双稳元素功能块 44
2.4.2 边沿检测功能块 45
2.4.3 计数器功能块 46
2.4.4 定时器功能块 47
2.5 程序 48
2.5.1 程序的表示 48
2.5.2 程序的特性 48
2.6 小结 48
习题 2 50
第 3 章 文本类编程语言 51
3.1 指令表编程语言 51
3.1.1 指令格式 51
3.1.2 指令集 52
3.1.3 指令分类 54
3.1.4 函数和功能块调用 65
3.1.5 示例 70
3.2 结构化文本编程语言 72
3.2.1 语句和表达式 73
3.2.2 赋值调用类语句 73
3.2.3 流控类语句 79
习题 3 86
第 4 章 图形类编程语言 88
4.1 梯形图编程语言 88
4.1.1 组成元素 88
4.1.2 函数和功能块的图形表示 93
4.1.3 扫描执行顺序 95
4.1.4 示例 98
4.2 功能块图编程语言 100
4.2.1 组成元素 101
4.2.2 连接和执行顺序 103
4.2.3 示例 106
习题 4 110
第 5 章 SFC 编程语言 111
5.1 组成元素 111
5.1.1 步 111
5.1.2 行动 114
5.1.3 转换 116
5.2 连接和执行顺序 118
5.2.1 连接结构 118
5.2.2 限定符 120
5.2.3 执行顺序 122
5.3 示例 124
5.3.1 跑马灯 124
5.3.2 交通灯 125
习题 5 128
第 6 章 状态机和 SFC 129
6.1 模型驱动开发 129
6.2 状态机模型 131
6.2.1 状态机的定义 131
6.2.2 状态机与流程图、多线程的关系 134
6.2.3 状态机与 SFC 138
6.3 SFC 组态原理 142
6.3.1 转换规则 142
6.3.2 推荐的 SFC 风格 143
6.3.3 SFC 编程语言的典型问题 144
6.4 SFC 语言转换 148
6.4.1 SFC 转 LD 149
6.4.2 SFC 转 ST 150
习题 6 152
第 7 章 现场总线和组态 153
7.1 概述 153
7.2 CANopen 现场总线 153
7.2.1 CAN 链路层 154
7.2.2 报文格式 155
7.2.3 COBID 156
7.2.4 节点状态机 156
7.3 CANopen 通信对象 157
7.3.1 网络管理 157
7.3.2 过程数据对象 159
7.3.3 服务数据对象 161
7.4 对象字典 164
7.4.1 对象字典的结构 164
7.4.2 PDO 映射 166
7.5 COE 总线组态 169
7.5.1 HPAC 系统构成 169
7.5.2 COE 主站数据区 171
7.5.3 扫描和分配 173
习题 7 176
第 8 章 HPAC 数据访问 177
8.1 运行时系统 177
8.1.1 生成过程 177
8.1.2 组成结构 180
8.2 数据访问 181
8.2.1 I/O 类过程数据 181
8.2.2 轴类过程数据 182
8.2.3 QTouch 183
8.2.4 Modbus 183
8.2.5 共享数据区 186
8.2.6 脚本层接口 186
8.2.7 单步调试 187
8.3 示例 189
8.3.1 QTouch HMI 189
8.3.2 双缓冲数据采集 191
习题 8 196
第 9 章 运动控制原理 197
9.1 PLCopen 运动控制规范 197
9.1.1 概述 197
9.1.2 轴状态机 198
9.2 初始化类 199
9.2.1 MC_Init 199
9.2.2 MC_Power 200
9.3 单轴运动类 200
9.3.1 MC_Absolute 200
9.3.2 MC_Relative 201
9.3.3 MC_SetPosition 202
9.3.4 MC_Home 202
9.3.5 MC_Halt 203
9.3.6 MC_Stop 203
9.3.7 MC_Reset 204
9.3.8 MC_Velocity 204
9.4 多轴运动类 205
9.4.1 MC_CamIn 205
9.4.2 MC_CamOut 205
9.4.3 MC_Combine 206
9.4.4 MC_GearIn 206
9.4.5 MC_GearOut 206
9.5 轴参数 207
9.5.1 初始化参数类 208
9.5.2 运行参数类 210
9.5.3 轴数据操作功能块 211
习题 9 212
第 10 章 安全控制原理 213
10.1 PLCopen Safety 213
10.1.1 概述 213
10.1.2 安全软件架构模型 214
10.1.3 安全布尔 215
10.1.4 安全功能块的基本规则 216
10.2 信号互检 217
10.2.1 SF_Equivalent 217
10.2.2 SF_Antivalent 218
10.3 安全开关 218
10.3.1 SF_ModeSelector 218
10.3.2 SF_ESPE 219
10.3.3 SF_TestableSafetySensor 220
10.3.4 SF_GuardMonitoring 221
10.3.5 SF_GuardLocking 222
10.3.6 SF_EnableSwitch 223
10.4 上、下料 224
10.4.1 SF_MutingSeq 224
10.4.2 SF_MutingPar 226
10.4.3 SF_MutingPar_2Sensor 227
10.4.4 SF_TwoHandControlTypeII 228
10.5 外部交互 229
10.5.1 SF_OutControl 229
10.5.2 SF_EDM 229
10.5.3 SF_SafetyRequest 230
10.5.4 SF_SafetyLimitedSpeed 231
10.5.5 SF_SafeStop1 232
习题 10 232
第 11 章 应用案例 233
11.1 逻辑控制 233
11.1.1 自保持与解除回路 233
11.1.2 交替输出回路 235
11.1.3 先入信号优先回路 238
11.1.4 24h 时钟 240
11.1.5 异步电动机正反转 241
11.1.6 脉波波宽调变 244
11.1.7 霓虹灯循环左移 246
11.2 伺服电动机运动控制 248
11.2.1 电动机正反转 1 248
11.2.2 电动机正反转 2 251
11.2.3 无限单向位移 253
11.2.4 缓冲模式 256
11.2.5 电动机回零 258
11.2.6 电动机点动 259
11.2.7 电子凸轮正反转 264
11.2.8 轴组合 266
11.3 安全集成设计模式 268
11.3.1 模式切换 270
11.3.2 急停和限位 273
11.3.3 流程和报警 275
11.3.4 循环计数 281
11.3.5 单轴装配机 285
11.3.6 小结 293
习题 11 297
参考文献 298