第1章 可编程序控制器基础 1
1.1 可编程序控制器的基本概念 1
1.2 可编程序控制器的特点与发展趋势 3
1.2.1 可编程序控制器的特点 3
1.2.2 可编程序控制器的发展趋势 6
1.3 可编程序控制器的基本结构与类型 7
1.3.1 可编程序控制器的基本结构 7
1.3.2 可编程序控制器的类型 9
1.4 可编程序控制器的工作原理与性能指标 10
1.4.1 可编程序控制器的工作原理 10
1.4.2 可编程序控制器的性能指标 17
1.5 习题 19
第2章 CP1H PLC的硬件系统 20
2.1 CP1H PLC的基本结构与系统特点 20
2.1.1 CP1H PLC的基本结构 20
2.1.2 CP1H PLC的系统特点 21
2.2 CPU单元 22
2.2.1 CP1H的CPU单元类型及其特点 22
2.2.2 CPU单元的结构 24
2.3 CP1H PLC的输入/输出单元 31
2.3.1 CP1H PLC输入单元的用法 32
2.3.2 CP1H PLC输入单元的工作原理 34
2.3.3 CP1H PLC输出单元的用法 36
2.3.4 CP1H PLC输出单元的工作原理 37
2.4 CP1H PLC的模拟量输入/输出单元 40
2.4.1 CP1H PLC的模拟量输入单元的功能 41
2.4.2 CP1H PLC的模拟量输入单元的工作原理 42
2.4.3 CP1H PLC的模拟量输出单元的功能 42
2.4.4 CP1H PLC的模拟量输出单元的工作原理 44
2.5 CP1H PLC的存储区分配 46
2.5.1 存储器概述 46
2.5.2 数据区域结构 47
2.5.3 CIO区 49
2.5.4 内部辅助继电器区 53
2.5.5 保持继电器区 53
2.5.6 特殊辅助继电器区 54
2.5.7 暂时存储继电器区 54
2.5.8 定时器区 55
2.5.9 计数器区 56
2.5.10 数据存储器区 57
2.5.11 变址寄存器 58
2.5.12 数据寄存器 60
2.5.13 任务标志 61
2.5.14 状态标志 61
2.5.15 时钟脉冲 62
2.6 CP1H PLC的I/O扩展单元 62
2.6.1 CPM1A系列扩展单元 62
2.6.2 CJ系列扩展单元 65
2.7 习题 67
第3章 CP1H PLC的指令系统 68
3.1 PLC的编程语言 68
3.1.1 顺序输入/输出指令 70
3.1.2 编程规则及技巧 78
3.2 定时计数类指令 81
3.2.1 定时器指令 81
3.2.2 计数器指令 83
3.2.3 定时器与计数器的典型应用 86
3.3 顺序控制指令 90
3.4 数据移位类指令 94
3.4.1 移位寄存器SFT(010) 94
3.4.2 可逆移位寄存器SFTR(084)/@SFTR(084) 95
3.4.3 算术左移指令ASL(025)/双字算术左移指令ASLL(570) 96
3.4.4 算术右移指令ASR(026)/双字算术右移指令ASRL(571) 97
3.4.5 循环左移指令ROL(027)/双字循环左移指令ROLL(572) 97
3.4.6 循环右移指令ROR(028)/双字循环右移指令RORL(573) 98
3.4.7 数(4bit)左移指令SLD(074)/数(4bit)右移指令SRD(075) 98
3.4.8 字移位指令WSFT(016)/@WSFT(016) 99
3.5 数据传送类指令 101
3.5.1 传送指令MOV(021)/求反传送指令MVN(022) 101
3.5.2 块传送指令XFER(070) 102
3.5.3 块设置指令BSET(071) 102
3.5.4 数据交换指令XCHG(073) 103
3.5.5 位传送指令MOVB(082) 103
3.5.6 数(4bit)传送指令MOVD(083) 104
3.5.7 数据分配指令DIST(080) 105
3.5.8 数据抽取指令COLL(081) 106
3.6 数据比较类指令 107
3.6.1 无符号比较指令CMP(020) 107
3.6.2 块比较指令BCMP(068) 109
3.6.3 表比较指令TCMP(085) 110
3.6.4 区域比较指令ZCP(088) 111
3.6.5 符号比较类指令 112
3.6.6 时刻比较类指令 113
3.7 数据转换类指令 115
3.7.1 BCD→BIN转换指令BIN(023) 115
3.7.2 BIN→BCD转换指令BCD(024) 116
3.7.3 4→16/8→256译码器MLPX(076) 116
3.7.4 16→4/256→8编码器DMPX(077) 119
3.7.5 七段译码指令SDEC(078) 121
3.7.6 ASCII转换指令ASC(086) 123
3.7.7 ASCII→HEX转换HEX(162) 125
3.8 递增/递减指令 127
3.8.1 BCD码递增指令++B(594)/双字BCD码递增指令++BL(595) 127
3.8.2 BCD码递减指令--B(596)/双字BCD码递减指令--BL(597) 128
3.8.3 二进制递增指令++(590)/双字二进制递增指令++L(591) 129
3.8.4 二进制递减指令--(592)/双字二进制递减指令--L(593) 129
3.9 四则运算类指令 130
3.9.1 置进位STC(040)/清进位CLC(041) 130
3.9.2 无CY BCD码加法指令+B(404)/带CYBCD码加法指令+BC(406) 131
3.9.3 无CY BCD码减法指令-B(414)/带CYBCD码减法指令-BC(416) 132
3.9.4 BCD码乘法指令*B(424)/双字BCD码乘法指令*BL(425) 133
3.9.5 BCD码除法指令/B(434)/双字BCD码除法指令/BL(435) 134
3.9.6 带符号无CY BIN加法指令+(400)/带符号CYBIN加法指令+C(402) 135
3.9.7 带符号无CY BIN减法指令-(410)/带符号CY BIN减法指令-C(412) 135
3.9.8 带符号BIN乘法指令*(420)/带符号双字BIN乘法指令*L(421) 136
3.9.9 带符号BIN除法指令/(430)/带符号双字BIN除法指令/L(431) 137
3.10 逻辑运算类指令 139
3.10.1 位取反指令COM(029)/双字位取反指令COML(614) 139
3.10.2 字逻辑与指令ANDW(034)/双字逻辑与指令ANDL(610) 139
3.10.3 字逻辑或指令ORW(035)/双字逻辑或指令ORWL(611) 140
3.10.4 字异或指令XORW(036)/双字异或指令XORL(612) 140
3.10.5 字异或非指令XNRW(037)/双字异或非指令XNRL(613) 141
3.11 高速计数/脉冲输出指令 142
3.11.1 频率设定指令SPED(885) 142
3.11.2 脉冲量设置指令PULS(886) 144
3.11.3 动作模式控制指令INI(880) 145
3.11.4 读取脉冲数指令PRV(881) 147
3.11.5 比较表登录指令CTBL(882) 149
3.12 习题 151
第4章 CP1H编程软件的使用方法 157
4.1 CX-Programmer的基本操作 157
4.1.1 梯形图离线编程 157
4.1.2 梯形图在线操作 172
4.2 功能块的基本操作 179
4.2.1 功能块概述 179
4.2.2 创建新功能块的定义 180
4.2.3 功能块的调用 189
4.2.4 功能块的在线监视 193
4.3 任务编程概述 195
4.4 任务的使用方法 198
4.5 中断任务 204
4.5.1 CP1H的中断功能 204
4.5.2 直接模式的输入中断 206
4.5.3 计数器模式的输入中断 208
4.5.4 定时中断 209
4.5.5 高速计数器中断 211
4.5.6 外部中断 213
4.6 习题 214
第5章 PLC应用程序设计与调试方法 215
5.1 PLC应用程序设计概述 215
5.1.1 PLC应用程序设计内容 215
5.1.2 PLC应用程序设计步骤 215
5.2 PLC应用程序设计方法 216
5.2.1 继电器-接触器电路图/梯形图转换设计法 216
5.2.2 组合逻辑设计法 217
5.2.3 经验设计法 218
5.2.4 顺控图设计法 221
5.2.5 步进顺控设计法 227
5.2.6 时序图设计法 233
5.3 PLC应用程序调试方法 234
5.3.1 信号校验方法 234
5.3.2 信号校验实例 235
5.3.3 PLC应用程序的现场调试方法 238
5.3.4 编程软件调试程序法 239
5.4 习题 244
第6章 PLC应用系统设计 248
6.1 PLC应用系统设计概述 248
6.1.1 PLC应用系统设计的原则与内容 248
6.1.2 PLC应用系统设计的主要步骤 249
6.2 PLC应用系统控制方案设计 251
6.2.1 项目分析 251
6.2.2 控制方案制定 253
6.3 PLC应用系统硬件设计 254
6.3.1 PLC机型的选取原则与方法 254
6.3.2 开关量输入/输出单元的选取原则与方法 256
6.3.3 模拟量输入/输出单元的选取原则与方法 257
6.3.4 PLC电源单元的选取原则与方法 258
6.4 CP1系列PLC安装布线规范 259
6.4.1 PLC系统安装条件 259
6.4.2 CP1系列PLC安装布线规范 260
6.5 PLC系统运行管理 271
6.5.1 PLC日常维护 271
6.5.2 定期检查控制系统的硬件设备 273
6.5.3 PLC系统的自诊断功能 273
6.5.4 故障诊断与处理方法 276
第7章 PLC实用案例 280
7.1 三相异步电动机Y-△减压起动控制案例 280
7.1.1 系统配置 280
7.1.2 Y-△减压起动PLC控制程序设计 281
7.1.3 编程要点 281
7.1.4 组合逻辑法编程 282
7.2 风机运行监控案例 283
7.2.1 控制要求 283
7.2.2 系统配置 283
7.2.3 PLC控制程序设计 283
7.3 三人抢答器控制案例 285
7.3.1 控制要求 285
7.3.2 系统配置 286
7.3.3 抢答器PLC控制程序设计 286
7.3.4 编程要点 288
7.4 动力头钻孔控制案例 288
7.4.1 控制要求 288
7.4.2 系统配置 289
7.4.3 动力头PLC控制程序设计 289
7.4.4 其他方法编程 299
7.5 交通信号灯控制案例 302
7.5.1 控制要求 302
7.5.2 系统配置 303
7.5.3 交通信号灯PLC控制程序设计 303
7.5.4 编程要点 305
7.6 顺序加热与报警控制案例 305
7.6.1 控制要求 305
7.6.2 系统配置 305
7.6.3 顺序加热PLC控制程序设计 307
7.6.4 编程要点 312
第8章 PLC过程控制应用系统设计实例 314
8.1 冲压车间空调机组系统设计 314
8.1.1 冲压车间空调机组项目分析 314
8.1.2 冲压车间空调机组控制方案设计 316
8.2 PLC系统配置与地址分配 319
8.2.1 PLC系统硬件配置 319
8.2.2 PT使用流程与画面功能设定 319
8.2.3 I/O与内存地址分配 324
8.3 冲压车间空调机组控制程序设计 325
8.3.1 模拟量信号的软件设置 325
8.3.2 工程量显示 327
8.3.3 工程量设定 330
8.3.4 量程标准化处理 333
8.3.5 PID指令工作原理及控制算法 334
8.3.6 PID回路调节程序设计 338
8.3.7 报警程序设计 342
8.4 CPM1A模拟量输入/输出扩展单元应用 344
8.4.1 模拟量输入单元CPM1 A-AD041 344
8.4.2 模拟量输出单元CPM1 A-DA041 348
第9章 基于PLC的六轴机械手控制系统设计 351
9.1 六轴示教机械手系统概述 351
9.1.1 工业机器人概述 351
9.1.2 六轴机械手系统 352
9.1.3 步进电动机及驱动器概述 352
9.2 六轴机械手控制系统及I/O分配 354
9.2.1 控制系统设计 354
9.2.2 CP1H PLC链接通信 356
9.2.3 I/O表及内存表 359
9.3 控制系统软件设计 361
9.3.1 控制系统软件设计流程 361
9.3.2 主PLC示教操作的程序设计 364
9.3.3 主PLC自动复现示教过程的程序设计 372
第10章 PLC串行通信实例 380
10.1 串行通信基础知识 380
10.1.1 数据传输方式 380
10.1.2 线路通信方式 383
10.1.3 差错控制 384
10.1.4 传输介质 385
10.1.5 串行通信接口标准 385
10.1.6 欧姆龙PLC串行通信协议综述 389
10.2 协议宏串行通信实例 392
10.2.1 控制要求与系统配置 392
10.2.2 串行通信单元参数设置方法 396
10.2.3 变频器串行通信设置 400
10.2.4 协议宏的创建 401
10.2.5 串行通信控制程序设计 409
参考文献 414