第四章 基于PLC的机器人系统集成¶
本章学习要点¶
本章学习提要:¶
在工业生产中,为更好地完成任务,工业机器人常需要与周边设备进行通信,特别是PLC系统,通过本章学习,熟悉工业机器人系统与外围设备的通信方式,掌握工业机器人与PLC的连接电路,掌握PLC控制工业机器人的程序设计方法(三菱PLC)。为整个机器人工作站系统的集成化构建奠定基础。
内容简介¶
基本逻辑指令
编程规则与技巧
基本逻辑指令的应用
1. 基本逻辑指令¶
一、LD、LDI、OUT 指令¶
指令的作用¶
LD (LoaD): 取指令, 常开触点与母线连接。
LDI (LoaD Inverse): 取反指令, 常闭触点与母线连接。
OUT: 驱动线圈的输出指令。
编程元件¶
LD:
LDI: X, Y, M, S, T, C
OUT: Y, M, S, T, C
编程元件(元件代号)¶
类别 |
代号 |
|---|---|
输入继电器 |
X |
输出继电器 |
Y |
辅助继电器 |
M |
状态继电器 |
S |
定时器 |
T |
计数器 |
C |
数据寄存器 |
D |
指针 |
P, I, N |
指令的说明¶
LD, LDI 用于将触点接到母线上。
LD, LDI 还与块操作指令ANB、ORB相配合, 用于分支电路的起点。
OUT 不能用于X; 并联输出OUT指令可连续使用任意次。
OUT 指令用于T和C, 其后须跟常数K, K为延时时间或计数次数。
梯形图程序 / 指令表程序¶
梯形图程序:
X0 --| |-- Y0
X1 --|/|-- M100
T0 --| |-- Y1
T0 --| |-- T0 (K19)
指令表程序:
步序
指令
地址
0
LD
X0
1
OUT
Y0
2
LDI
X1
3
OUT
M100
4
OUT
T0
K19
7
LD
T0
8
OUT
Y1
二、AND、ANI 指令¶
指令的作用¶
AND: 与指令, 用于串联单个常开触点。
ANI (ANd Inverse): 与反指令, 用于串联单个常闭触点。
编程元件¶
AND:
ANI: X, Y, M, S, T, C
指令的说明¶
AND和ANI指令用于单个触点与左边触点的串联, 可连续使用。
执行OUT指令后, 通过与指令可驱动其它线圈输出。
若是两个并联电路块(两个或两个以上触点并联连接的电路)串联, 则需用后面的ANB指令。
梯形图程序 / 指令表程序¶
梯形图程序:
X0 --| |-- AND --| |-- X2 --| |-- Y2
Y2 --| |-- ANI --| |-- X1 --| |-- M10
T1 --| |-- AND --| |-- Y3
指令表程序:
步序
指令
地址
0
LD
X0
1
AND
X2
2
OUT
Y2
3
LD
Y2
4
ANI
X0
5
OUT
M101
6
AND
T1
7
OUT
Y3
三、OR、ORI 指令¶
梯形图程序 / 指令表程序¶
梯形图程序:
LD – X1 --| |-- OR – Y1 --| |-- Y1
|-- ORI -- M102 --| |-- Y1
LD – X1 --| |-- ANI – Y1 --| |-- M103
|-- OR -- M103 --| |-- Y2 --| |-- M103
|-- ORI -- M104 --| |-- M103
指令表程序:
步序
指令
地址
0
LD
X1
1
OR
Y1
2
ORI
M102
3
OUT
Y1
4
LDI
X1
5
ANI
Y1
6
OR
M103
7
ANI
Y2
8
ORI
M104
9
OUT
M103
四、ORB 指令¶
ORB (Or Block): 串联电路块并联连接指令¶
指令的说明¶
串联电路块: 两个或以上的触点串连而成的电路块。
将串联电路块并联时用ORB指令。
ORB指令不带元件号(相当于触点间的垂直连线)。
每个串联电路块的起点都要用LD或LDI指令, 电路块后面用ORB指令。
梯形图程序 / 指令表程序¶
梯形图程序:
X2 --| |-- AND – X0 --| |-- Y0
X1 --|/|-- ANI – Y2 --| |-- ORB – Y0
指令表程序:
步序
指令
地址
0
LD
X2
1
AND
X0
2
LDI
X1
3
ANI
Y2
4
ORB
6
OUT
Y3
五、ANB 指令¶
ANB (And Block): 并联电路块串联连接指令¶
指令的说明¶
并联电路块: 两个或以上的触点串连而成的电路。
将并联电路块与前面的电路串联时用ANB指令。
使用ANB指令前, 应先完成并联电路块内部的连接。
并联电路块中各支路的起点使用LD或LDI指令。
ANB指令相当于两个电路块之间的串联连线。
梯形图程序 / 指令表程序¶
梯形图程序:
X1 --|/|-- ANB – YO --| |-- M100 --| |-- M115
X2 --| |-- ORI – YO
YO --|/|-- ANI – M100
Y2 --|/|-- LDI
M101 --| |-- AND
T0 --| |-- OR
X3 --| |-- ORI – ANB
指令表程序:
步序
指令
地址
0
LDI
X1
1
ORI
X2
2
LDI
YO
3
ANI
M100
4
LDI
Y2
6
AND
M101
7
ORB
8
OR
T0
9
ANB
10
ORI
X3
11
OUT
M115
六、MPS、MRD、MPP 指令¶
指令的作用¶
MPS (Push): 进栈指令。
MRD (Read): 读栈指令。
MPP (POP): 出栈指令。
指令的说明¶
MPS、MRD、MPP指令无编程元件。
MPS、MPP指令成对出现, 可以嵌套。
MRD指令可有可无, 也可有两个或两个以上。
梯形图(一层栈例) / 指令表程序¶
梯形图程序:
X1 --| |-- MPS – M100 --| |-- Y1
|-- MRD -- M101 --| |-- Y2
|-- MPP -- Y3
指令表程序:
步序
指令
地址
0
LDI
X1
1
MPS
2
AND
M100
3
OUT
Y1
4
MRD
6
AND
M101
7
OUT
Y2
8
MPP
9
AND
102
10
OUT
Y3
梯形图(一层栈例) / 指令表程序¶
梯形图程序:
X1 --| |-- MPS -- X2 --| |-- AND -- M0 --| |-- Y1
|-- LDI -- X2 --| |-- OR -- X0 --| |-- ANB
|-- MPP -- X3 --| |-- Y2
|-- LD -- X4 --| |-- OR -- X5 --| |-- ANB -- Y3
指令表程序:
步序
指令
地址
0
LD
X1
1
MPS
2
LDI
X2
3
AND
M0
4
OR
X0
5
ANB
6
OUT
Y1
7
MPP
8
AND
X3
9
OUT
Y2
10
LD
X4
11
OR
X5
12
ANB
13
OUT
Y3
梯形图(二层栈例) / 指令表程序¶
梯形图程序:
X1 --| |-- MPS -- X2 --| |-- MPS -- M100 --| |-- YO
|-- LDI -- X2 --| |-- ANI -- M100 --| |-- MPP
|-- MPP -- M102 --| |-- Y1
|-- AND -- M102 --| |-- MPP
|-- MPP -- X3 --| |-- AND -- M100 --| |-- Y2
|-- MPS -- M105 --| |-- AND -- M100 --| |-- MPP
|-- AND -- M105 --| |-- Y3
指令表程序:
步序
指令
地址
0
LDI
X1
1
MPS
2
AND
X2
3
MPS
4
ANI
M100
6
OUT
Y0
7
MPP
8
AND
M102
9
OUT
Y1
10
MPP
11
AND
X3
12
MPS
13
AND
M100
14
OUT
Y2
15
MPP
16
AND
M105
17
OUT
Y3
七、MC、MCR 指令¶
MC: 主控指令 (公共触点串联)¶
MCR: 主控复位指令¶
指令的梯形图 / 指令表程序¶
梯形图程序:
X0 --| |-- MC – N0 – M100
M100 --| |-- X1 --| |-- Y1
|-- X3 --| |-- Y2
MCR – N0
指令表程序:
步序
指令
地址
0
LD
X0
1
MC
N0
2
M100
3
LD
X1
4
OUT
Y1
5
LD
X3
6
OUT
Y2
7
MCR
N0
多重嵌套主控指令¶
梯形图程序: (包含多重嵌套 MC 和 MCR 指令)
指令表程序: (对应的指令表)
八、SET、RST 指令¶
指令的作用¶
SET: 置位指令 (接通并保持)。
RST: 复位指令。
指令的说明¶
SET指令的编程元件: Y, M, S。
RST指令的编程元件: Y, M, S, T, C, D。
RST指令具有优先级。
指令的梯形图 / 指令表程序¶
梯形图程序:
X0 --| |-- SET – Y0
X1 --| |-- RST – Y0
X2 --| |-- RST – D0
指令表程序:
步序
指令
地址
0
LD
X0
1
SET
Y0
2
LD
X1
3
RST
Y0
4
LD
X2
5
RST
D0
积分计数器、定时器复位¶
梯形图程序: (展示 RST 指令在定时器和计数器上的应用)
指令表程序: (对应的指令表)
九、PLS、PLF 指令¶
指令的作用¶
PLS (Pulse): 上升沿微分输出指令。
PLF: 下降沿微分输出指令。
指令的说明¶
指令只能用于编程元件 Y 和 M。
PLS 为信号上升沿 (OFF→ON) 接通一个扫描周期。
PLF 为信号下降沿 (ON→OFF) 接通一个扫描周期。
指令的梯形图 / 指令表程序¶
梯形图程序:
X0 --| |-- PLS – M0
M0 --| |-- SET – Y0
X1 --| |-- PLF – M1
M1 --| |-- RST – Y0
指令表程序:
步序
指令
地址
0
LD
X0
1
PLS
M0
2
LD
M0
3
SET
Y0
4
LD
X1
5
PLF
M1
6
LD
M1
7
RST
Y0
十、NOP、END 指令¶
指令的作用¶
NOP: 空操作指令。
END: 结束指令。
指令的说明¶
NOP、END 指令无编程元件。
PLC 执行程序时从 0 步扫描到 END 指令为止, 后面的程序跳过不执行。
定时器的应用¶
问题的提出¶
FX系列PLC提供的定时器只有通电延时类, 如何实现断电延时的功能?
定时器设定值最大为 32767, 最长延时时间不足 1 小时, 如何实现长延时?
通电延时/断电延时¶
通电延时: (图示和波形图展示)
断电延时: (图示和波形图展示)
定时器的串联¶
(图示展示两个定时器串联实现更长延时)
延时时间 = T0 + T1 = 3600s
定时器的最大设定值为 32767, 不足 1 小时, 为了扩展定时器的延时时间, 可以采用几种方法。
定时器和计数器配合使用¶
(图示展示定时器和计数器配合使用实现长延时)
延时时间 = 60s × 60 = 3600s
闪烁 (振荡) 电路¶
(图示和波形图展示闪烁电路)
2. 编程的规则与技巧¶
一、编程的基本规则¶
触点只能与左母线相连, 不能与右母线相连。
线圈只能与右母线相连, 不能直接与左母线相连, 右母线可以省略。
线圈可以并联, 不能串联连接。
应尽量避免双线圈输出。
二、编程的技巧¶
并联电路上下位置可调, 应将单个触点的支路放下面。
(图示和指令表展示 “不好” 和 “好” 的情况)
串联电路左右位置可调, 应将单个触点放在右边。
(图示和指令表展示 “不好” 和 “好” 的情况)
双线圈输出的处理:
(图示展示如何处理双线圈输出)
线圈并联电路中, 应将单个线圈放在上边。
(图示和指令表展示 “不好” 和 “好” 的情况)
桥形电路的化简方法: 找出每条输出路径进行并联。
(图示展示桥形电路的化简)
3. 基本逻辑指令的应用¶
例一、电动机的连续运转¶
控制思路¶
电动机的额定电流较大, PLC 不能直接控制主电路, 需要主电路。
找出所有输入量和输出量, 接入 I/O 接线图。
为了扩大输出电流, 采用继电器输出方式。
热继电器的常闭触点可以作为输入信号进行过载保护, 也可以在输出进行保护。
梯形图和指令表。
主电路¶
(电路图展示三相异步电动机的主电路)
I/O 接线图¶
(接线图展示启动按钮、停止按钮、热继电器等与 PLC 的连接)
梯形图 / 指令表程序 / 时序图¶
梯形图: (展示电动机连续运转的梯形图)
指令表程序: (对应的指令表)
时序图: (展示输入输出信号的时序关系)
例二、电动机的顺序控制¶
主电路¶
(电路图展示三个三相异步电动机的主电路)
I/O 接线图¶
(接线图展示启动/停止按钮、电动机运行指示灯等与 PLC 的连接)
梯形图¶
(展示电动机顺序控制的梯形图)
指令表¶
注意:
回路的起点用 LD 指令。
回路串联指令为 ANB。
可以先串回路再串触点, 也可以先串触点再串回路。
(对应的指令表)
综合示例¶
(图示展示三台电动机的顺序控制的主电路、I/O 接线图、梯形图)
同学们下节课见!