-
以下是
三菱
plc
常用
的指令,还有不懂的可以问我
一
<
/p>
程序
流程控制
指令
—
FNC00~09
00
CJ
条件转移
01
CALL
子程序调用
02
SRET
子程序返回
03
IRET
中断返回
04
EI
开中断
05
DI
关中断
06
FEND
主程序结束
07
WDT
监控
定时
器
刷新
08
FOR
循环开始
09
NEXT
循环结束
二
传送、比较指令
—
FNC10~19
BIN----
二进制
BCD----
十进制
10
CMP
比较
11
ZCP
区间比较
12
MOV
传送
13
SMOV
BCD
码移位传送
14
CML
取反传送
15
BMOV
数据块
传送(
n
点
→n
点)
16
FMOV
p>
多点传送(
1
点
→
n
点)
17
XCH
数据交
换
,
(
D0
)
←→
(
D2
)
18
BCD
BCD
变换,
BIN→BCD
19
BIN
BIN
变换,
BCD→BIN
三
p>
算术、
逻辑运算
指令
—
FNC20~29
BIN----
二进制
BCD----
十进制
20
ADD
BIN
加法
21
SUB
BIN
减法
22
MUL
BIN
乘法
23
DIV
BIN
除法
24
INC
BIN
加一
25
DEC
BIN
减一
26
W
AND
字与
27
WOR
字或
28
WXOR
字
异或
29
NEG
求
BIN
补码
四
循环、移位指令
—
FNC30~39
30
ROR
循环右移
31
ROL
循环左移
32
RCR
带进位循环右移
33
RCL
带进位循环左移
34
SFTR
位右移
35
SFTL
位左移
36
WSFR
字右移
37
WSFL
字左移
38
SFWR
FIFO
写入
39
SFRD
FIFO
读出
五
数据处理指令
—
FNC40~49
40
ZRST
区间复位
41
DECO
解码
42
ENCO
编码
43
SUM
求置
ON
位总数
44
BON
ON
位判别
45
MEAN
求平均值
46
ANS
信号<
/p>
报警器
标志置位
47
ANR
信号报警器标志复位
48
SQR
BIN
平方根
49
FLT
BIN
整
数
→BIN
浮点数
六
高速处理指令
—
FNC50~59
50
REF
输入输出刷新
51
REFF
输入滤
波
时间常数
调整
52
MTR
矩阵
输入
53
HSCS
高速记数器比较置位
54
HSCR
高速记数器比较复位
55
HSZ
高速记数器区间比较
56
SPD
速度检测
57
PLSY
脉冲输出
58
PWM
脉冲宽度调制
59
PLSR
带加减速功能的脉冲输出
七
方便指令
—
FNC60~69
60
IST
状态初始化
61
SER
数据搜索
62
ABSD
绝对值凸轮
顺控
63
INCD
增量凸轮顺控
64
TTMR
示教定时器
65
STMR
专用定
时器
—
可定义
66
ALT
交替输出
67
RAMP
斜坡输出
68
ROTC
旋转工作台
控制
69
SORT
数据排序
八
外部
I/
O
设备指令
—
FNC70~79
70
TKY
10
键输入
71
HKY
16
键输入
72
DSW
拨码开关
输入
73
SEGD
七段
译码
74
SEGL
带锁存的七段码显示
75
ARWS
方向开关
76
ASC
ASCII
码转换
77
PR
打印输出
78
FROM
读特殊功能模块
79
TO
写特殊功能模块
九
外围设
备
指令
—
FNC80~89
80
RS
RS-232C
串行通讯
81
PRUN
并行运行
82
ASCI
十六进制
→ASCII
83
HEX
ASCII→
十六进制
84
CCD
校验码
85
VRRD
电位器
读入
86
VRSC
电位器设定
88
PID
PID
控制
十
F2<
/p>
外部模块指令
—
FNC90~99
90
MNET
F-16N,
Mini
网
91
ANRD
F2-6A,
模拟量
输入
92
ANW*
*2-6*,
模拟量输出
93
RMST
F2-32RM,
启动
RM
94
RMWR
F2-32RM,
写
RM
95
RMRD
F2-32RM,
读
RM
96
RMMN
F2-32RM,
监控
RM
97
BLK
F2-30GM,
指定块
98
MCDE
F2-30GM,
机器码
十一
浮点数
运算指令
—
FNC110~132
110
ECMP
BIN
浮点数比较
111
EZCP
BIN
浮点数区间比较
118
EBCD
BIN
浮点数
→BCD
浮点数
119
EBIN
BCD
浮
点数
→BIN
浮点数
120
EADD
BIN
浮点数加法
121
ESUB
BIN
浮点数减法
122
EMUL
BIN
浮点数乘法
123
EDIV
BIN
浮点数除法
127
ESQR
p>
BIN
浮点数
开方
129
INT
BIN
浮点数
→BIN
整数
130
SIN
p>
BIN
浮点数
正弦函数
(
SIN
)
131
COS
BIN
浮点数
余弦函数
(
COS
)
132
TAN
BIN
浮点数
正切函数
(
TAN
)
十二
交换指令
—
FNC147
147
SW
AP
高低字节交换
十三
定位指令
—
FNC155~159
155
ABS
读当前绝对值位置
156
ZRN
返回
原点
157
PLSY
变速脉冲输出
158
DRVI
增量式单速位置控制
159
DRV
A
绝对式单速位置控制
十四
时钟运算指令
—
FNC160~169
160
TCMP
时钟数据比较
161
TZCP
时钟数据区间比较
162
TADD
时钟数据加法
163
TSUB
时钟数据减法
166
TRD
时钟数据读出
167
TWR
时钟数据写入
169
HOUR
小时定时器
十五
变换指令
—
FNC170~177
170
GRY
二进制数
→
格雷码
171
GBIN
格雷码
→
二进制数
176
RD3A
p>
读
FXon-3A
模拟量模块
177
WR3A
写
FXon-3A
< br>模拟量模块
十六
触点比较指令
—
FNC224~246
224
LD=
(S1)=(S2)
时运算开始之触
点接通
225
LD>
(S1
)>(S2)
时运算开始之触点接通
226
LD<
(S1)<(S2)
时运算开始之触
点接通
228
LD<>
(S1)≠(S2)
时运算开始之触点接通
229
LD≤
p>
(S1)≤(S2)
时运算开始之触点接通
230
LD≥
p>
(S1)≥(S2)
时运算开始之触点接通
232
AND=
(S1)=(S2)
时串联触点接通
233
AND>
(S1)>(S2)
时串联触点接通
234
AND<
(S1)<(S2)
时串联触点接通
236
AND<>
(S1)≠(S2)
时串联触点接通
237
AND≤
(S1)≤(S2)
时串联触点接通
238
AND≥
(S1)≥(S2)
时串联触点接通
240
OR=
(S1)=(S2)
时并联触点接通
241
OR>
(S1)>(S2)
时并联触点接通
242
OR<
(S1)<(S2)
时并联触点接通
244
OR<>
(S1)≠(S2)
时并联触点接通
245
OR≤
(S1)≤(S2)
时并联触点接通
246
OR≥
提问人的追问
(S1)≥(S2)
时并联触点接通
2011-04-13 14:16
楼主
三菱
PLC
编程手册
目
录
第一章
FX1N
PLC
编程简介
1.1
FX1N
PLC
简介
..............................
.................................1
1.1.1
FX1N
PLC
的提出
..........
............................................1
1.1.2
FX1N
PLC
p>
的特点
...........................
............................1
1.1.3
FX1N
PLC
产品举例
...........................................
..........1
1.1.4
关于本手册
................................
............................1
1.2
编程简介
.........
..................................................
.........1
1.2.1
指令集简介
.................................
...........................2
1.2.2
资源集简介
...........................
.................................7
1.2.3
编程及应用简介
....
..................................................
.
9
第二章
基本逻辑指令说明及应用
2.1 <
/p>
基本逻辑指令一览表
....................
.....................................10
2.1
[LD],[LDI],[LDP],[LDF]
p>
,
[OUT
]指令
.....................................10
2.2.1
指令解说
.......
..................................................
....10
2.2.2
编程示
例
......................................
.......................10
2.3[AND]
,
[ANI]
,
[AND
P]
,
[NDF
]指令
............................................11
2.3.1
指令解说
.......
..................................................
....11
2.3.2
编程示
例
......................................
.......................12
2.4
[OR],[ORI]
,
p>
[ORP],[ORF
]指令
......
.........................................13
2.4.1
指令解说
.......
..................................................
....13
2.4.2
编程示例
.............................................
................13
2.5
[ANB],[ORB
]指令
........
..................................................
.14
2.5.1
指令解说
p>
.........................................
....................14
2.5.2
编程示例
.......
..................................................
....14
2.6
[INV
]指
令
......................................
...........................15
2.6.1
指令解说
...........................
..................................15
2.6.2
编程示例
.......
..................................................
....15
2.7
[PLS]
,[PLF
]指令
....................
.......................................16
2.7.1
指令解说
.......
..................................................
....16
2.7.2
编程示
例
......................................
.......................17
2.8
[SET]
,
[RST]
指令
.................
..........................................17
2.8.1
指令解说
.............................................
................17
2.8.2
编程示
例
......................................
.......................18
2.9
[NOP]
,
[END]
指令
.................
..........................................18
2.9.1
指令解说
.......
..................................................
....18
2.9.2
编程示例
..................................................
...........18
2.10
[MPS]
,
[MRD]
,
[MP
P]
指令
.......................
...........................18
2.10.1
指令解说
......
..................................................
....18
2.10.2
编程示例
.................................................
........19
2.11[MC],[MCR]
指令<
/p>
........................................
..................21
2.11.1
指令解说
........................
........................................21
2.11.2
编程示例
......
..................................................
.21
第三章
步进顺控指令说明及应用
3.1
步进顺控指令说明
..........
..................................................
...22
3.1.1
指令解
..
..................................................
........22
3.1.2
编程示例
..............................................
............25
3.2
步进顺控指令应用<
/p>
........................................
................25
3.2.1
单一流
程示例
....................................
..................25
3.2.2
选择性分支与汇合示例
..................
............................26
3.2.3
并行分支与汇合示例
..
..............................................27
3.2.4
循环和跳转示例
..........................................
..........29
第四章
功能指令说明及应用
4.1
功能指令一览表
......
..................................................
..31
4.2
程序流程
..........................................
......................33
4.2.1
条件跳转
[CJ]...
..................................................
.33
4.2.2
子程序调用
[CALL]
.....
............................................35
4.2.3
子程序返回
[SRET]
.......................................
..........35
4.2.4
主程序结束
[FEND]
.....
............................................36
4.2.5
循环范围开始[
FOR]
.......................................
........37
4.2.6
循环范围结束「
NEXT]
....
..........................................37
4.3
传送与比较
..............................................
................38
4.3.1
比较指令
[CMP]
.......
............................................
39
4.3.2
区域比较[
ZCP]
.......
............................................40
4.3.3
传送指令
[MOV]........................................
.............41
4.3.4
反向传送[
CML]
.......
............................................43
4.3.5
BCD
转换[
BCD]
.........
..........................................44
4.3.6
BIN
转换[
BIN]
.........
..........................................45
4.4
四则逻辑运算
.................................
.........................46
4.4.1
BIN
加法运算
[ADD]
.......
.........................................46
4.4.2
BIN
减法运算
[SUB]
.......
.........................................47
4.4.3
BIN
乘法运算
[MUL]
.......
.........................................48
4.4.4
BIN
除法运算[
DIV]
.......
........................................49
4.4.5
BIN
1
[INC].........
..........................
.................50
4.4.6
BIN
减
1
[DEC]
......................
...................................50
4.4.7
逻辑与
[WAND] <
/p>
........................................
.............51
4.4.8
逻辑或
[WOR]
........
..............................................51
4.4.9
逻辑异或
[WXOR].......................................
.............52
4.4.10
求补[
NEG].........................
..............................53
4.4.11
BIN
开方运算
[SQR]
.......
........................................53
4.5
循环与移位
..............................................
................54
4.5.1
循环右移
[ROR]
.......
.............................................54
4.5.2
循环左移
[ROL]
.......
.............................................55
4.5.3
带进位循环右移[
RCR]
.......................................
.......
...56
4.5.4
带进位循环左移
[RCL]
....
..........................................58
4.6
浮点数运算
..............................................
................59
4.6.1
二进制浮点数比较「
DECMP]
.
........................................59
4.6.2
二进制浮点数区域比较<
/p>
[DEZCP]
.....................
.................60
4.6.3
二进制浮点数转十进制浮点数
[DEBCD]
................................61
4.6.3
十进制浮点数转二进制浮点数
[DEBIN]
................................62
4.6.5
二进制浮点数加法
[DEADD]
.
.........................................62
4.6.6
二进制浮点数减法
[DESUB]
.
.........................................63
4.6.7
二进制浮点数乘法「
DEMUL]
.
........................................64
4.6.8
二进制浮点数除法「
DEDIV]
.
........................................65
4.6.9
二进制浮点数开方「
DESQR]
.
........................................66
4.6.10
二进制浮点数转
BIN
整数变换「
INT]
................................67
4.6.11
BIN
整数转二进制浮点数「
FLT]
....................................68
4.7
触点比较指令
.............................................
...............69
4.7.1
接点比较指令「
LD
※
]
.....................................
.........69
4.7.2
接点比较指令「
AND
※
]
..........................................
...70
4.7.3
接点比较指
令「
OR
※
]
...............................................72
4.8
功能指令的基本规则
..........................................
............73
4.8.1
.功能指令的表示与执行形式
.....................
...........
.......73
4.8.2
功能指令内的数值处理
.
.............................................75
4.8.3
利用变址寄存器的操作
数修改
....................................
....77
第五章
资源说明及应用
5.1
变址寄存器
V
、
Z
说明及应用
............................................80
5.1.1
变址寄存器
V
、
Z
说明
.
............................................80
5.1.2
变址寄存器在梯形图中
的应用
....................................
....80
5.1.3
使用变
址功能的注意事项
...............................
..............81
5.2
输入输出继电器
X
、
Y
说明及应用
.........................................82
5.2.1
输入输出继电器
X
、
Y
说明
.
........................................82
5.2.2
输入输出继电器应用
..........
......................................83
5.3
辅助中间继电器
M
说明及应用
..........................................
...85
5.3.1
辅助中间继电器
M
说明
.............................................
85
5.3.2
辅助中间继电器
M
应用
.............................................
85
5.4
状杰继申器
S
说明及应用
............................................ ....87
5.4.1
状态继电器
S
说明
< br>............................................... ..87
5.4.2
状态继电器
S
应用
< br>............................................... ..88
5.5
定时器
T
说明及应用
..............................................
......88
5.5.1
定时器
T
说明
.................................................
...88
5.5.2
定时器
T
应用
.................................................
..
90
5.6
计数器
C
说明及应用
................................
....................
92
5.6.1
16
bit
计数器
C
说明
............................................
92
5.6.2
32
bit
计数器
C
说明
............................................
93
5.6.3
16
bit
计数器
C
应用
............................................
95
5.6.4
32
bit
计数器应用
............................................ ...
96
5.7
数据寄存器
D
说明及应用
..............................
..................
97
5.7.1
数据寄存器
D
说明
..............................
.................
97
5.7.2
数据寄存器
D
应用
..............................
.................
99
5.8
程序位置指针
P
说明及应用
.............................
.................100
5.8.1
程序位置指针
P
说明
.............................................1
00
5.8.2
程序位置指针
P
应用
.............................................1
00
5.9
常数标记
K
、
H
详细说明
................................................1
02
5.9.1
常数标记
K.........................................
.............102
5.9.2
常数标记
H...........................
...........................103
5.10
特殊软元件说明
.....
..................................................
103
第六章
PID
指令说明及应用
6.1
PID
运算
..............................................
.................104
6.1.1.............
..................................................
..104
6.1.2
应用示例
.
..................................................
.....110
第一章
FX1N
PLC
编程简介
1.1
FX1N
PLC
简介
1.1.1
FX1N
PLC
的提出
基于以下观点,提出
FX1N
PLC
的概念:
①
、软件和硬件独立设计。
在规定好硬
件和软件接口的前提下,各自独立设计,以提高开发效率。
②
、简化硬件设计。
只需进行外形设计和电气接口设计,功能设计由软件设计取代。
③
、简化软件设计。
依托功能强大的软
件平台,只需设计个体产品与平台间的软件接口。
④
、产品应用可二次编程。
根据工艺要求,用标准梯形图语言进行二次编程。
1.2.1
FX1N
PLC
的特点
①
、什么是
FX1N
PLC
?
将
PLC
语言(梯形图语言)嵌入到
专用芯片中,获取了梯形图编程平台所提供的各种强大的应用
功能。
我们称用于
PLC
专用芯片产品开发,自身具有强大功能的梯形图语言编程软件为
FX1N
PLc
。
FX1N
PLc
能广泛应用于各种工业控制产品中。
②
、
FX1N
PLC
产品有哪些特点?
利用
FX1N
PLC
软件开发出的应用产品,
我们称之为
FX1N
PLC
产品。
FX1N
PLC
产品具有以下
特点:
●
用梯形图语言编写应用程序。
●
能与多家人机界面连接,如台达、
EView
等。
●
支持
CANBUS
网络结构。
●
与其它厂家
PLC
< br>并联运行。
1.1.3
FX1N
PLC
产品举例
①
、可编程控制器
FX1N-40MR
本产品有开关量输入
24
点、开关量输出
16
点,除具有可编
程逻辑控制功能之外。每台产品均支持
人机界面。
②
、空压机控制器
具有用户要求的外观
和接口,用户可根据自己的意图,用梯形图编写不同的控制程序,便于工艺保
密和系列产
品的标准化。每台控制器均可支持人机界面。
③
、供水控制器
预留较多的富余接口,
可适应各种复杂的供水要求,是供水行业的通用型控制器。应用人员可用梯
形图编写控制
程序,满足用户的不同需要。该产品支持人机界面。
1.1.4
关于本手册
编写本手册的目的是帮助
FXZN
PLC
产品的用户,正确使用梯形图语言编程,充分发挥
FXZN
PL
C
所提供的强大功能。
“
编程简介
”
简要介绍梯形图的指令集和资源集,使有
一定梯形图语言编程基础的用户参照指令集和
资源集后可立即编写通用控制程序。
第二章到第五章,详细介绍了指令集和资源集,通过这些章节的学习
,使初学者也能用梯形图编写
各种应用程序。
第六章介绍
plD
专用控制算法,属专家成果应用。
1.2
编程简介
1.2.1
指令集简介
①
、基本逻辑指令:
●
助记符及名称:
LD
:读取常开点。
LDI
:读取常闭点。
AND
:串入常开点。
ANI
:串入常闭点。
OR
并入常开点。
ORI
:并入常闭点。
ANB
:电路块串联。
ORB
:电路块并联。
OUT
:线圈输出。
SET
:线圈输出保持。
RST
:清除线圈输出。
PLS
:上升沿输出脉冲。
PLF
:下降沿输出脉冲。
LDP
读取上升沿。
LDF
读取下降沿。
ANDP
:上升沿接通,串联连接。
ANDF
:下降沿接通,串联连接。
ORP
:上升沿接通,并联连接。
ORF
:下降沿接通,并联连接。
INV
:运算触点取反。
MPS
:压栈。
MRD
:读栈。
MPP
:出栈。
MC
:主控。
MCR
:主控结束。
NOP
:空操作。
END
:程序结束。
●
梯形图与指令表:
梯形图是电气控制的专业语言,方便编程人员编程。
专用芯片是按指令表执行控制。
梯形
图与指令表二者自动相互转换。下例是二者相互转换示意图。
梯形图
想对基本逻辑指令进一步了解,请参看《
第二章基本逻辑指令说明及应用》
。
②
、步进顺控指令:
●
助记符及名称:
STL
:步进梯形图开始。仅对状态继电器
S
。步序间状态转移必须使用
SETS
,不能用
OUTS
。
RET
:步进梯形图结束。
●
梯形图与指令表:
梯形图是电气控制的专业语言,方便编程人员编程。
专用芯片是按指令表执行控制。
梯形
图与指令表二者自动相互转换。下例是二者相互转换示意图。
想对步进顺控指令进一步了解,请参看《
第三章步进顺控指令说明及应用》
。
③
、基本功能指令:
●
助记符及名称:
CJ
:条件跳转。
CALL
:子程序调用。
SRET
:子程序返回。
FENn
:主程序结束。
FOR
:循环开始。
NEXT
:循环结束。
*
*
*
*
*
*
*
*
*
*
*
CMP
:
比较。
ZCP
:区域
L
匕较。
MOV
:传送。
CML
:取反传送。
BCD
:
BIN
向
BCD
转换。
BIN
:
BCD
向
BIN
转换。
*
*
*
*
*
*
*
*
*
*
*
*
ADD
:加法。
SUB
:减法。
MUL
:乘法。
DIV
:除法。
INC
:自加
l
运算。
DEC
:自减
l
运算。
。
WAND
:字与运算(按位)
。
WOR
:字或运算(按位)
。
WXOR
:字异或运算(按位)
NEG
:取补运算。
SQR
:开方运算。
*
*
*
*
*
*
*
*
*
*
*
*
*
ROR
:循环右移。
ROL
:循环左移。
RCR
:带进位循环右移。
RCL
:带进位循环左移。
*
*
*
*
*
*
*
*
*
*
*
*
*
*
DECMP
:二进制浮点数比较。
DEZCP
:二进制浮点数区域比较。
DEBCD
:二进制浮点数向十进制浮点数转换。
DEBIN
:十进制浮点数向二进制浮点数转换。
DEADD
:二进制浮点数加法。
DESUB
:二进制浮点数减法。
DEMUL
:二进制浮点数乘法。
DEDIV
:二进制浮点数除法。
DEsQR
:二进制浮点数开方。
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
INT
:二进制浮点数取整。
FLT
:整数转换为二进制浮点数。
*
*
*
*
*
*
*
*
*
*
*
*
*
*
。
LD
=
:读取
“
等于
L
匕较节点
”
LD
>
:读取
“
大于
L
匕较节点
。
”
。
LD
<
:读取
“
小于
L
匕较节点
”
。
LD
<
>
:读取
“
不等于比较节点
”
。
LD
<
=
:读取
“
小于等于比较节点
”
。
LD
>
=
:读取
“
大于等于比较节点
”
。
AND
= <
/p>
:串联
“
等于比较节点
< br>”
。
AND
>
:串联
“
大于比较节点
”
AND
<
:串联
“
小于比较节点
。
”
。
AND
<
>
:串联
“
不等于比转节点
”
。
AND
p>
<
=
:串联
“
p>
小于等于比较节点
”
。
AND
>
=
:串联
“
大于等于比较节点
”
。
OR
=
:并联
“
等于比较节点
”
。
OR
>
:并联
“
大于比较节点
”
OR
<
:并联
“
小于
L
匕较节点
。
”
。
OR
<
卜并联
“
不等于比较节点
”
。
OR
<
=
:并联
“
小于等于比较节点
”
。
OR
>
=
:并联
“
大于等于比较节点
”
●
梯形图与指令表:
梯形图是电气控制的专业语言,方便编程人员编程。
专用芯片是按指令表执行控制。
梯形
图与指令表二者自动相互转换。下例是二者相互转换示意图。
想对基本功能指令进一步理解,请参看《
第四章基本功能指令说明及应用》
。
④
、专家功能指令:
●
助记符及名称:
PID
:
PID
控制算法。
●
梯形图与指令表:
梯形图是电气控制的专业语言,方便编程人员编程。
专用芯片是按指令表执行控制。
梯形
图与指令表二者自动相互转换。下例是二者相互转换示意图。
想对专家功能指令进一步了解,请参看《
第六章专家功能指令说明及应用》
。
1.2.2
资源集简介
①
、输入继电器
X
:
扩展数量:
128
点。
标号范围:
X000
-一
X177
;标号为
8
进制。
实际产品的数量和范围:由
FX1N
PLC
产品确定。
如
K
一
40MR
,范围:
X000
一
X027
,数量:
24
点
②
、输出继电器
Y
:
扩展数量:
128
点。
标号范围:
Y000
-一
Y177
;标号为
8
进制。
实际产品的数量和范围:由
FX1N
PLC
产品确定。
如
K
一
40MR
,范围:
Y000
一
Yol7
,数量:
16
点。
③
、辅助继电器
M
:
数量:
1536
点
标号范围:
MO
一
M1535
;
标号为十进制。一般用:
MO
一
M1023
,计
1024
点。
停电保持用:
M1024
一
M1535
,计
512
点。
④
、状态继电器
S
:
数量:
1000
点
标号范围:
50
一
5999
;标号为十进制。
一般用:
50
一
M499
,计
500
点。
停电保持用:
M500
一
M999
,计
500
点。
⑤
、时间继电器
T
:
数量:
256
点
标号范围:
TO
一
T255
;标号为十进制。三龙电子科技
一般用:
TO
一
T199
,
100
ms
型,计
200
点
T200
一
T245
,
10
ms
型,计
46
点
累积用:
T246
一
T249
,
1
ms
型,计
4
点
T250
一
T255
,
100
ms
型,计
6
点
累积用的时间继电器在停电时,计时数据保持,必须用
RST
清零。
⑥
、计数器
C
:
数量:
256
点
标号范围:
CO
一
C199
;
C200
一
C255
;标号为十进制。
一般用:
CO
一
C99
,
1
6
bit
,计
100
点。
停电保持用
C100
-Cl99
,
16
bit
,计
100
点。
C200
-C255
,
32bit
可逆计数器,计数方向由
M8200
一
M8255
确定,
ON
时减计数。
⑦
、数据寄存器
D
:
数量:
6000
点
标号范围:
DO
一
D5999
;标号为十进制。
一般用:
DO
一
D199
,计
200
点。
停电保持用:
D200
一
D5999
,计
5800
点
⑧
、变址寄存器
V
:
数量:
8
点。
标号范围:
VO
-一
7
;标号为十进制,无停电保持功能。
⑨
、变址寄存器
Z
:
数量:
8
点。
标号范围:
20
一
27
;标号为十进制,无停电保持功能。
⑩
、程序位置指针
P
:
数量:
128
个
标号范围:
PO
一
P127
;标号为十进制。
⑾
、十进制常数标记
K
、
H
:
标号
K
后的常数为十进制常数。
标号
H
后的常数为十六进制常数。如
HIO
=
K16
。
⑿
、特殊软元件:
MS000
:程序运行时
ON
;
MSOOZ
:程序开运行时第一个扫描周期时
ON
;
M8020
:零标志;
M8021
:借位标志;
M8022
:进位标志;
M8200
一
M8255
:
32
bit
逆计数器方向指定。
想对资源更进一步了解,请参看《
第五章资源详细说明及应用》
。
1.2.3
编程及应用简介
①
、编程软件
●
梯形图编程软件
SLJDWin
:
支持梯形图编程、下载、监控,可对
FX1N
PLC
产品设置加密口令。
●
网络设置软件上位机软件
支持网络构
建、下载,经上位机软件设置的主节点与从节点能自动交换网络数据。网络构建支持第
三
方设备。
②
、编程设备
个人计算机:
SLJDWin
运行于
WindowS
操作系统。操作系统可以是:
Windows
95
,
Windows
98
,
Windows
2000
,
Windows
XP
。
③
、编程及应用流程说明
●
产品编程。
一般有以下步骤:
了解
FX1N
PLC
产品的硬件接口(
X
,
Y
,
D
)和功能要求;
编写梯形图程序;
程序检查及下载;
程序监控及调试;
批量应用于嵌入式产品;
第二章
基本逻辑指令说明及应用
2.1
基本逻辑指令一览表
助记符、名称
功能
可用软元件
程序步
LD
取
常开触点逻辑运算开始
X
,
Y
,
M
,
S
,
T
,
C
l
LDI
取反
常闭触点逻辑运算开始
X
,
Y
,
M
,
S
,
T
,
C
l
LDP
取脉冲上升沿
上升沿检出运算开始
X
,
Y
,
M
,
S
,
T
,
C
2
LDF
取脉冲下降沿
下降沿检出运算开始
X
,
Y
,
M
,
S
,
T
,
C
2
AND
与
常开触点串联连接
X
,
Y
,
M
,
S
,
T
,
C
l
ANI
与非
常闭触点串联连接
X
,
Y
,
M
,
S
,
T
,
C
l
ANDP
与脉冲上升沿
上升沿检出串联连接
X
,
Y
,
M
,
S
,
T
,
C
2
ANDF
与脉冲下降沿
下降沿检出串联连接
X
,
Y
,
M
,
S
,
T
,
C
2
OR
或
常开触点并联连接
X
,
Y
,
M
,
S
,
T
,
C
l
ORI
或非
常闭触点并联连接
X
,
Y
,
M
,
S
,
T
,
C
l
ORP
或脉冲上升沿
上升沿检出并联连接
X
,
Y
,
M
,
S
,
T
,
C
2
ORF
或脉冲下降沿
下降沿检出并联连接
X
,
Y
,
M
,
S
,
T
,
C
2
ANB
块与
并联回路块的串联连接
l
ORB
块或
串联回路块的并联连接
l
OUT
输出
线圈驱动
Y
,
M
,
S
,王
C
注
1
SET
置位
动作保持
Y
,
M
,
S
注
2
RST
复位
清除动作保持,寄存器清零
Y
,
M
,
S
,王
C
,
D
,
V
,
Z
PLS
上升沿脉冲
上升沿输出
Y
,
M
(特殊
M
除外)
l
PLF
下降沿脉冲
下降沿输出
Y
,
M
(特殊
M
除外)
l
MC
主控
公共串联点的连接线圈指令
Y
,
M
(特殊
M
除外)
3
MCR
主控复位
公共串联点的消除指令
2
MPS
压栈
运算存储
l
MRD
读栈
存储读出
l
MPP
出栈
存储读出与复位
l
INV
取反
运算结果的反转
l
NOP
空操作
无动作
l
END
结束
输入输出及返回到开始
l
●
软元件为
Y
和一般
M
的程序步为
1
,
S
和特殊辅助继电器
M
的程序步为
2
,定时器
T
的程
序步为
3
,计数器
C
的程序步为
3
-5
。
●
软元件为
Y
和一般
M
的程序步为
1
,
S
和特殊辅助继电器
M
、
定时器
T
、
计数器
C
的程序
步为
2
,数据寄存器
D
以及变址寄存器
V
和
Z
的程序步为
3
。
2.2
[LD],[LDI],[
LDP],[LDF],[OUT]
指令
2.2.1
指令解说
助记符、名称
功能
可用软元件
程序步
LD
取
常开触点逻辑运算开始
X
,
Y
,
M
,
S
,
T
,
C
l
LDI
取反
常闭触点逻辑运算开始
X
,
Y
,
M
,
S
,
T
,
C
l
LDP
取脉冲上升沿
上升沿检出运算开始
X
,
Y
,
M
,
S
,
T
,
C
2
LDF
取脉冲下降沿
下降沿检出运算开始
X
,
Y
,
M
,
S
,
T
,
C
2
OUT
输出
线圈驱动
Y
,
M
,
S
,王
C
见说明
●
LD
,
LDI
,
LDP
,
LDF
指令将触点连接到母线上。
多个分支用
ANB
,
ORB
时也使用。
.
LD
P
指令在上升沿(软元件由
OFF
到
ON
变化时)接通一个周期;
LDF
指令在下降沿(软元件由
O
N
到
OFF
变化时)接通一个周期。
即与后面的
ANB
,
ORB
指令使用
●
LD
,
LDI
,
LDP
,
LDF
指令的重复使用次数在
8
次以下。
时串并连使用的最多次数为
8
个。
●
软元件为
Y
和一般
M
的程序步为
1
,
S
和特殊辅助继电器
M
的程序步为
2
,定时器
T
的程
序步为
3
,计数器
C
的程序步为
3
一
5
。
●
OUT
指令各种软元件的线圈驱动,但对输入继电器不能使用
。并列的
OUT
可多次连续使用。
●
OUT
指令驱动计数器时,当前面的线圈从
ON
变成
OFF
,或者是从
OFF
变成
ON
时,计数
器才加一。
2.2.2
编程示例
0
LD
X000
1
OUT
Y000
2
OUT
C0
K10
5
LDI
X001
6
OUT
Y001
7
OUT
T0
K100
10
LD
C0
11
OUT
Y002
12
LD
T0
13
OUT
Y003
14
LDP
X002
16
OUT
M2
17
LDF
X003
19
OUT
M3
20
END
用
LD
,
LDI
,
LDP
,
LDF
指令与母线连接。输出使用
OUT
指令驱动线圈。使用
OUT
指令驱动
定时器的计时线圈或者计数器的计数线圈时,必须设定定时和计数的时间和计数的值,可
以是常数
K
,或者由数据寄存器间接指定数值。每个程序结束
必须要有
END
指令,关于
END
指令详见后
面的
END
指令介绍。
2.3
[AND]
,
[ANI],[ANDP],[ANDF]
指令
2.3.1
指令解说
助记符、名称
功能
可用软元件
程序步
AND
与
常开触点串联连接
X
,
Y
,
M
,
S
,
T
,
C
l
ANI
与非
常闭触点串联连接
X
,
Y
,
M
,
S
,
T
,
C
l
ANDP
与脉冲上升沿
上升沿检出握
马联连接
X
,
Y
,
M
,
S
,
T
,
C
2
ANDF
与脉冲下降沿
下降沿检出握
马联连接
X
,
Y
,
M
,
S
,
T
,
C
2
●
AND
,
ANI
,
ANDP
,
ANDF
指令只能串接一个触点,两个以上的并联回路串联时
使用后面
的
ANB
指令。串联次数不受限制。
●
ANDP
,
ANDF
指令在上升沿(即软元件由
ON
到
OFF
变化时)和下降沿即(软元件由
OFF
到
ON
变化时)接通一个周期。
2.3.2
编程示例
0
LD
X000
1
AND
X001
2
OUT
Y000
3
LD
X002
4
ANI
X003
5
OUT
Y001
6
LD
Y000
7
ANDP
Y001
9
OUT
Y002
10
LDI
X004
11
ANDF
Y001
13
OUT
Y003
14
END
●
实例中
x00l
,
x003
,
Y00l
作为串联触点与前面的触点相连。
2.4
[OR],[ORI],[ORP],[ORF]
指令
2.4.1
指令解说
助记符、名称
功能
可用软元件
程序步
OR
或
常开触点并联连接
X
,
Y
,
M
,
S
,
T
,
C
l
ORI
或非
常闭触点并联连接
X
,
Y
,
M
,
S
,
T
,
C
l
ORP
或脉冲上升沿
上升沿检出并联连接
X
,
Y
,
M
,
S
,
T
,
C
2
ORF
或脉冲下降沿
下降沿检出并联连接
X
,
Y
,
M
,
S
,
T
,
C
2
●
OR
,
ORI
,
ORP
,
ORF
指令只能并接一个触点,两个以上的串联回路并联时使用后面的
ORB
指令。
●
ORP
,
ORF
指令在上升沿(即软元件由
OFF
到
ON
变化时)和下降沿(即软元件由
ON
到
O
FF
变化时)接通一个周期。
●
OR
,
ORI
,
ORP
,
ORF
指令和前面的
LD
,
LDI
,
LDP
,
LDF
指令一起使用,并联次数不受
限制。
2.4.2
编程示例
0
LD
X000
1
ORP
X001
3
ORI
M0
4
OUT
Y000
5
LD
X002
6
ORF
X010
8
ANI
X003
9
ORI
X011
10
AND
X004
11
OR
X012
12
LDI
X005
13
ORF
X013
15
AND
X006
16
ORI
X014
17
ANB
18
OUT
Y001
19
END
在程序步
12
到
16
●
使用
OR
,
ORI
,
ORP
,
ORF
与前面的
LD
,
LDI
,
LDP
,
LDF
并联连接,
中,由于是两个并联回路块的串联,所以使用
ANB
指令,关于
ANB
指令详见后面的说明。
2.5
[ANB],[ORB]
指令
2.5.1
指令解说
助记符、名称
功能
可用软元件
程序步
ANB
块与
并联回路块的串联连接
l
ORB
块或
串联回路块的并联连接
l
●
当多分支回路与前面的回路串联连接时,使用
ANB
指令。分支以
LD
,
LDI
,
LDP
,
LDF
指
令作为起点,使用
ANB
指令与前面以
LD
,
LDI
,
LDP
,
LDF
指令作为起点的分支串联连接。
●
当
2
个以上的触点串接的串联回路块并联连接时,每个分支使用
LD
,
LDI
指令开始,
ORB
指令结束。
●
ANB
,
ORB
指令都是不带软元件的指令。
●
ANB
,
ORB
使用的并串联回路的个数
不受限制,但是当成批使用时,必须考虑
LD
.
LDI
的
使用次数在
8
次以下。
2.5.2
编程示例
0
LD
X000
1
ANI
X001
2
LDI
X002
3
AND
X003
4
ORB
5
LD
X004
6
AND
X005
7
ORB
8
OUT
Y000
9
LD
X006
10
OR
X007
11
LD
X010
12
ANI
X011
13
LDI
X012
14
AND
X013
15
ORB
16
ORI
X014
17
ANB
18
OR
X015
19
OUT
Y001
20
END
●
在每个分支的最后使用
ORB
指令,不要在所有的分支后面使用
ORB
指令,如程序步
4
和
7
所示。
如果不是块就不能使用,
如程序步
16
和
18
不是块就不能
●
ORB
和
ANB
指令只是对块的连接,
p>
使用。如图所示,串联回路块和并联回路块的示例。
2.6[INV]
指令
2.6.1
指令解说
助记符、名称
功能
可用软元件
程序步
INV
取反
运算结果的反转
l
●
INV
指令是将
INV
指令之前,
LD
,
LDI
,
LDP
,
LDF
指令之后的运算结果取反
的指令,
没有
软元件。
2.6.2
编程示例
0
LD
X000
1
INV
2
OUT
Y000
3
LDI
X001
4
INV
5
INV
6
OUT
Y001
7
END
INV
指令的动作范围如下图
2.7[PLS],[PLF]
指令
2.7.1
指令解说
助记符、名称
功能
可用软元件
程序步
PLS
上升沿脉冲
上升沿输出
Y
,
M
(特殊
M
除外)
l
PLF
下降沿脉冲
下降沿输出
Y
,
M
(特殊
M
除外)
l
.使用
PLF
●
使用
PLS
指令时,只在线圈由
OFF
变成
ON
的一个扫描周期内,驱动软
元件。
指令时,只在线圈由
ON
变成
OFF
的一个扫描周期内,驱动
软元件。
.对具有停电保持功能的软元
件,它只在第一次运行时
产生脉冲动作。
2.7.2
编程示例
0
LD
X000
1
PLS
M0
3
LD
M0
4
SET
Y000
5
LD
X000
6
PLF
M1
8
LD
M1
9
RST
Y000
10
LDP
X001
12
OUT
M2
13
LD
M2
14
SET
Y001
15
LDF
X001
17
OUT
M3
18
LD
M3
19
RST
Y001
20
END
●
程序段。一
2
和
10
一
12
的动作相同,都是在线圈闭合
的上升沿,驱动一个扫描周期的输出。
同样,程序段
5
一
7
和
15
一
17
的动作相同,都是在在线圈闭
合的下降沿,驱动一个扫描周期的输
出。
●
关于
SET
,
RST
指令的作用详见后面的说明。
2.8
[SET],[RST]
指令
2.8.1
指令解说
助记符、名称
功能
可用软元件
程序步
SET
置位
动作保持
Y
,
M
,
S
见说明
RST
复位
清除动作保持,寄存器清零
Y
,
M
,
S
,王
C
,
D
,
V
,
Z
●
软元件为
Y
和一般
M
的程序步为
1
,
S
和特殊辅助继电器
M
、定时器
T
、计数器
C
的程序
步为
2
,
数据寄存器
D
以及变址寄存器
V
和
Z
的程序步为
3
。
.
SET
指令在线圈接通的时候就对
软元件进行置位,只要置位了,除非用
RST
指令复位,否则将保持为
1
的状态。同样,对
RST
指
令只要对软元件复位,将保持为
O
的状态,除非用
SET
指令置位。
●
对同一软元件,
SET
,
RST
指令可以多次使用,顺序随意,但是程序最后的指令有效。
●
RST
指令可以对数据寄存器(
D
)
,变址寄存器仪
Z
)
,定时器(
T
)和计数器(
C
)
,不
论是保持还是非保持的都可以复位置零。
2.8.2
编程示例
0
LD
X000
1
SET
Y000
2
LDI
X001
3
RST
Y000
4
LDP
X001
6
SET
Y001
7
LDF
X001
8
RST
Y001
10
END
2.9
[NOP],[END]
指令
2.9.1
指令解说
助记符、名称
功能
可用软元件
程序步
NOP
空操作
无动作
l
END
结束
输入输出及返回到开始
l
●
程序清除时指令变为
NOP
指令,
指令之间加入
NOP
指令,
程序对他不做任何事情,
继续向下
执行,只是增加了程序的步数。
●
每个程序必须有一个且只有一个
END
指令,表示程序的结束。
PLC
不断
反复进行如下操作:
输入处理,从程序的
O
步开始执行直到
END
指令,程序处
理结束,接着进行输出刷新。然后开始
循环操作。
2.9.2
编程示例
0
LD
X000
1
AND
X001
2
OUT
Y000
3
NOP
4
NOP
5
LDI
X002
6
ANI
X003
7
OUT
Y001
8
END
2.10[MPS],[MRD],[MPP]
指令
2.10.1
指令解说
助记符、名称
功能
可用软元件
程序步
MPS
压栈
运算存储
l
MRD
读栈
存储读出
l
MPP
出栈
存储读出与复位
l
●
嵌入式
PLC
中有
H
个栈空间,
< br>也就是说可以压栈的最大深度为
H
级。
每使用一次
MPS
将当前
结果压入第一段存储,以前压入的结果依次移入下一段。
MPP
指令将第一段读出,并且删除它,同
时以下
的单元依次向前移。
MRD
指令读出第一段,但并不删除它。
其他单元保持不变。使用这三
条指令可以方便多分支的编程。
.
在进行多分支编程时,
MPS
保存前面的计算结果,以后的分
支可
以利用
MRD
,
MPP
从栈中读出前面的计算结果,再进行后面的计算。最后一个分支必须用
MPP
,
保证
MPs
,
MPP
使用的次数相同。注意,
使用
MPP
以后,
就不能再使用
MRD
读出运算结果,
也
就是
MPP
必须放在最后的分支使用。
●
MRD
指令可以使用多次,没有限制。
MPS
连续使用的最多次数为
H
,但是可以多次使用。每
个
MPS
指令都有一个
MPP
指令对应,
MPP
的个数不能多于
MPS
的个数。
2.10.2
编程示例
实例
1
0
LD
X000
1
MPS
2
AND
X001
3
OUT
Y000
4
MRD
5
ANI
X002
6
OUT
Y001
7
MPP
8
OUT
Y002
9
AND
X003
10
OUT
Y003
11
END
实例
2
0
LD
X004
1
MPS
2
LD
X005
3
ORI
X006
4
ANB
5
ANI
X007
6
OUT
Y004
7
MRD
8
LDI
X010
9
AND
X011
10
LD
X012
11
ANI
X013
12
ORB
13
ANB
14
OUT
Y005
15
MPP
16
AND
X014
17
OUT
Y006
18
MPS
19
LDI
X015
20
OR
X016
21
ANB
22
OUT
Y007
23
MPP
24
AND
X017
25
OUT
Y010
26
END
该实例使用一级两段堆栈,并且跟
OR
,
ORB
,
ANB
指令混合使用。
实例
3
0
LD
X000
1
MPS
2
ANI
X001
3
MPS
4
ANI
X002
5
MPS
6
AND
X003
7
OUT
Y000
8
MPP
9
ANI
X004
10
OUT
Y001
11
MPP
12
ANI
X005
13
AND
X006
14
OUT
Y002
15
MPP
16
AND
X007
17
MPS
18
ANI
X010
19
OUT
Y003
20
MPP
21
AND
X011
22
OUT
Y004
23
END
该实例使用三级堆栈,即堆栈嵌套三级。
2.11[MC],[MCR]
指令
2.11.1
指令解说
助记符、名称
功能
可用软元件
程序步
MC
主控
公共串联点的连接线圈指令
Y
,
M
(特殊
M
除外)
3
MCR
主控复位
公共串联点的消除指令
2
就执行
MC
到
MCR
的指令。
执行
MC
指令时,
母线向
MC
触点后移动,
●
当前面的触点接通时,
执行
MCR
指令返回母线。
●
使用
MC
指令时,嵌套级
N
的编号按顺序依次增大,也就是说只有使用
NO
,才能嵌套
Nl
。
相反使用
MCR
指令时,必须从大往小返回母线。最大嵌套级数为
7
级(
N6
)
。
●
通过不同的软元件
Y
,
M
,可以多次使用
MC
指令,如果使用相同的软元件,将同
OUT
指
令一样,会出现双线圈输出。
2.11.2
编程示例
.该实例中当
xo0
●
该实例只使用一个
MC
,
MCR
指令,嵌套级数也是
1
,可以进行
7
级嵌套。
0
接通时,执行
MC
,
MCR
之间的指令,当
xo00
断开时,成为如下两种形式。
现状保持:累积定时器的值,计数器的值,用
SET
瓜
ST
指令驱动的软元件。变为断开
的元件:非
累积定时器的值,用
OUT
指令驱动的软元件。
0
LD
M8000
1
OUT
Y000
2
LD
X000
3
MC
N0
M0
6
LD
X001
7
OUT
Y001
8
LDP
X003
10
SET
Y002
11
LDF
X003
13
RST
Y002
14
LD
X005
15
OUT
T0
K10
18
OUT
T250
K10
21
OUT
C0
K10
24
OUT
C100
K10
27
LD
T0
28
OUT
Y003
29
LD
T250
30
OUT
Y004
31
LD
C0
32
OUT
Y005
33
LD
C100
34
OUT
Y006
35
MCR
N0
37
END
第三章
步进顺控指令说明及应用
3.1
步进顺控指令说明
3.1.1
指令解说
助记符、名称
功能
可用软元件
程序步
STL
步序动作开始
S
l
RET
步序动作结束
无
l
步进控制方式(
STL
)是将控制被划分为多个工序状态(
s
)
,依据条件进行状态转移(
SET
)
,
逐步完成控制过程。
步进控制方式的
特点是将复杂控制分步后,分别考虑好每一步的控制,从而降低了各步的关联,降
低编程
的复杂程度。
各状态内执行的动作由梯形图其它指令编写。
STL
是一个步序动作的开始指令。
RET
是一个步序动作的结束指令,其后指令返回母线。
●
SETSi
是
STL
状态发生转移的唯一指令
●
规定:子程序内不能使用
STL
一
RET
指令。
●
当前状态(
50
)向下一个状态(
Sl
)转移时,该
扫描周期两个状态内的动作均得到执行;下
一扫描周期执行时,当前状态(
50
)被下一状态(
51
)所复位,当前状态(
S0
)内的所有动作
不被执行,所有
OUT
元件的输入均被断开。
.步序与步序之间一般省去
RET
,因此看起来是多个
STL
可共用一个
RET
。有
STL
而没有
RET
,程序检查出错。
3.1.2
编程示例
●
步序与步序之间一般省去
RET
,因此看起来是多个
STL
可共用一个
RET
。有
STL
而没有
RE
T
,程序检查出错。
状态转移只能用
SET
指令,不能用
OUT
指令。
使用
OUTS
时,
S
作为辅助继电器使用,而不是状态寄存器。
时间继电器
T
可重复使用,但相邻两个状态不能重复使用同一时间继电器。
●
两个矛盾继电器输出时,必需加软件互锁。考虑软件快于硬件
,相矛盾的硬件输出也必需互锁。
●
允许同一继电器在不同状态下输出,其实际输出视状态转移
的位置确定。
3.2
步进顺控指令应用
3.2.1
单一流程示例
示例说明:
该程序描述一个自行葫芦
自进入工位到走出工位的步序过程,若在葫芦升降过程中发生停电,来电
后继续停电前的
动作,并保证升或降动作总时间不变。
5500
一
5503
为停电保持型状态寄存器;
C100
一
C101
为停电保持型计数器;
TO
延时
2
秒,作信
号确认用;
T1
作为
500
ms
脉冲发生器;
xo
=
0N
时,表示工位上停有自行葫芦;
TO
=
0N
时,表明工位上无自行葫芦;因信号由滑触线供给,因而
XO
=
OFF
时,不一定确定工
位无车,需延时确认。
YO
为驱动进车;
Y1
驱动葫芦下降;
Y2
驱动葫芦上升。
3.2.2
选择性分支与汇合示例
在步进顺控指令中,多个条件均可导致状态转移,但多个条件
是互斥的,当一个条件成立时,另外
条件便不能成立。这样的分支是选择性分支。
各选择性分支最终进行到一个共同的状态,我们称这一过程为选择性
分支的汇合。
●
选择性分支分支数规定不能超过
8
路。
示例说明:
如产品输送线上有
A
、
B
两种产品,当机械手识别为
A
类产品时,进入
A
类流程处理;若识别为
B
类产品,进入
B
类流程处理,处理完后,放回输送线,进入下一工序。
流程示意图:
梯形图:
3.2.3
并行分支与汇合示例
p>
在步进顺控指令中,一个条件导致多个状态发生,每个状态都按自已的流程独立进行状态转移
,这
些各自独立的状态流程称步进指令的并行分支。
多个同时独立进行状态转移的分支,当各分支状态同时有效时
,整体才能进行到下一状态,我们称
这一过程为并行分支的汇合。
并行分支汇合梯形图上表示为多个状态连续使用
STL
指令,连续使用
STL
的个数就是并行分支汇
合的支路数。
连续使用
STL
的个数规定不超过
8
个。
示例说明:
三条独立的产品线上,分别生产
A
、
B
、
C
三类产品,但包装入库必须按
30
件
A
、
20
件
B
、
10
件
C
组成一个包装。当任一产品数量不够时就不能构成一个包装。
流程示意图:
梯形图:
3.2.4
循环和跳转示例
实际使用过程中,常常涉及到很多混合形式,如:
选择性分支导致循环(第一个循环)和跳转(进入一个新的循环)
。而每个
大的循环内又有并行分支
和汇合情况。有并行分支和汇合情况。
示例说明:
一个简易保安系统,在规定次数(如
5
次)的范围内,若密码不正确将启动报警系统,并关闭安全
通道。若规定的次数内密码
正确,进入密级操作。
流程示意图:钥匙进入
XO
=
ON
梯形图:
第四章
功能指令说明及应用
4.1
功能指令一览表
分类
指令助记符
功能
页码
程序流程
CJ
条件跳转
CALL
子程序调用
SRET
子程序返回
FEND
主程序结束
FOR
循环范围开始
NEXT
循环范围结束
传送也比较
CMP
比较
ZCP
区域比较
MOV
传送
CML
反向传送
BCD
BCD
转换
BIN
BIN
转换
四则逻辑运算
ADD
BIN
加法
SUB
BIN
减法
MUL
BIN
乘法
DIV
BIN
除法
INC
BIN
加
1
DEC
BIN
减
1
WAND
逻辑字与
WOR
逻辑字或
WXOR
逻辑字异或
NEG
求补码
SQR
BIN
开方
循环与移位
ROR
循环右移
ROL
循环左移
RCR
带进为循环右移
RCL
带进为循环左移
基本指令一览表(续)
分类
指令助记符
功能
页码
浮
点
数
比
较
ECMP
2
进制浮点数比较
EZCP
2
进制浮点数区域比较
EBCD
2
进制浮点数转
10
进制浮点数
EBIN
10
进制浮点数转
2
进制浮点数
EADD
2
进制浮点数加法
ESUB
2
进制浮点数减法
EMUL
2
进制浮点数乘法
EDIV
2
进制浮点数除法
ESQR
2
进制浮点数开方
INT
2
进制浮点数转
BIN
整数
FLT
BIN
整数转
2
进制浮点数
节
点
比
较
LD=
(S1)=(S2)
LD>
(S1)>(S2)
LD<
(S1)<(S2)
LD<>
(S1)<>(S2)
LD≤
(S1)≤(S2)
LD≥
(S1)
≧
(S2)
AND=
(S1)=(S2)
AND>
(S1)>(S2)
AND<
(S1)<(S2)
AND<>
(S1)<>(S2)
AND≤
(S1)≤(S2)
AND
≧
(S1)
≧
(S2)
OR
(S1)=(S2)
OR
(S1)>(S2)
OR
(S1)<(S2)
OR
(S1)<>(S2)
OR≤
(S1)≤(S2)
OR
≧
(S1)
≧
(S2)
4.2
程序流程
4.2.1
条件跳转『
CJ
』
16
位指令
CJ
(连续执行型)
3
步
CPJ
(脉冲执行型)
适用软元件
指针(
P
)可以指定下列序号
P0=P127
指针编号可变变址修改
功能和动作
作为执行序列的一部分的指令,有
CJ
、
CJP
指令,可以缩短运算周期。
在上图示例中,如果
X000“ON
”
,
则从
0
步
跳到
23
步(标记
P0
的后一步)
。
X000“OFF”
< br>时,不进行跳
转,顺序执行。
当
X000“ON”
时,进行跳转,跳转中的线圈动作如下:<
/p>
●
Y
、
p>
M
、
S
保持以前动
作;
●
T
在跳转前若没有触发,定时器也不动作。若被触发,时钟继续运行,但触点不动作,
当<
/p>
X000“O
FF”
时,触点立即动作;
●
C<
/p>
在跳转前若没有触发,
跳转后即使触发,
计数器不动作。
若被触发,
计数中断,
当
X000“OFF”
时继续计数;
●
功能指令跳转后不动作;
●
定时器及计数器的复位指令在跳转外时,技术线圈及跳转的计
数线圈复位(接点复位及当前值
的清除)有效。
,线圈动作如上。
●
对
END
步
跳转,需标明标号(
P0
~
P127<
/p>
都可以)
●
主控制指令和跳转指令的关系及动作如下,
p>
从
MC
外向
MC<
/p>
内跳转时,
与
MC
的动作无关,
即使
M100
处于
p>
“OFF”
状态下,
P0
< br>以下
M100
视为
“O
;
N”
p>
从
MC
内向
MC<
/p>
外内跳转时,
M100
处于
“OFF”
状态下,不能跳转;
从
p>
MC
内向
MC
外内
跳转时,
M100
处于
“OFF”
p>
状态下,不能跳转,当
M0“ON”
时,可
跳转,但
MC
R
无效
< br>
4.2.2
子程序调用『
CALL
』
16
位指令
CALL
(连续执行型)
3
步
CALLP
(脉冲执行型)
4.2.3
子程序返回『
SRET<
/p>
』
单独指令
SRET
1
步
不需要触点驱动的指令
适用
软元
件
子程序调用的指针(
P
)
P0
~
P127
;
指针编号可做变址修改;
嵌套最多可
为
5
层;
对子程序返回无适用软元件。
功能和动作
,
则执行调用指令跳转到标记
P11
步,执行完通过执行
SRET
指令返回原来的步,
●
若
X001“ON”
再往下执行;
●
在
FE
ND
指令后对标记(子程序)编程;
●
CJ
指
令的标记和子程序的标记不能重复编号;
●
在子程序内最多可以允许有四层嵌套,如上例,还可增加
p>
2
层,整体而言可做
5
层;
,如果变址得出的编号没有,嵌入式
PLC
停止工
●
指针编号可作变址修改,如
P0
Z(
0+12
=
12
)
作。
4.2.4
主程序结束『
FEND
』
单独指令
FEND
1
步
不需要触点驱动的指令
功能和动作
●
<
/p>
当程序使用多个
FEND
指令时,子程序
请在最后的
FEND
指令与
END
p>
指令之间编写。
4.2.5
循环范围开始『
FOR<
/p>
』
16
位指
令
FOR
(连续执行型)
3
步
适用
软元
件
•
< br>字软元件
K
、
H
、
KnX
、
KnY
、
KnM
、
KnS
、
T
、
C
、
D
、
V
、
Z
,
可作变址修改
4.2.6
循环范围结束
『
NEXT
』
单一指令
NEXT
1
步
不需要触点驱动的指令
功能和动作
,执行完后,才处理
NEXT
指令
p>
只在
FOR
~
NE
XT
指令之间的处理(利用源数据指定的次数)
以后的程序。<
/p>
●
上图是通电时对保持用辅助继电器复位的程序;
●
从
4<
/p>
步至
25
步之间的程序执行了
16
次,执行完后
Z
的值
为
512
;
●
<
/p>
FOR
~
NEXT
嵌套最多
5
层;
●
循环次数多次周期会延长,请务必注意;
●
NEXT
指令在
FOR
指令之前,或无
NEX
T
指令,或在
FEND
、
END
指令以后有
NEXT
指令,或
FOR
指令与
NEXT
个书不相等,都会出错;
●
若不想执行
FOR
< br>~
NEXT
之间的程序时,利用
CJ
指令,使之跳转。如在上图所例,在
25
< br>步前插
入
LDI
M0
CJ
P50
则
Z
的值为
32
,即只执行了一次。
4.3
传送与比较
4.3.1
比较指令『
CMP
』
16
位指令
CMP
(连续执行型)
7
步
CMPP
(脉冲执行型)
32
位指令
DCMP
(连续执行型)
13
步
DCMPP
(脉冲执行型)
适用软元件
•
字软元件(
S1•
、
S2•
)
K
、
H
、
KnX
、
KnY
、
K
nM
、
KnS
、
T
、
C
、
D
、
V
、
Z <
/p>
•
位软元件(
D̶
6;
)
Y
、
M
、
S
功能和动作
;
●
上图示例是
D0
的内容与常数
100
进行比较
,大小比较是按代数形式进行的(
<
br> 所有数据都以
M0 <
br>M2
-8
)
●
2
进制值处理;
,
当
D0<
100
,
M2“ON”
;
●
当
D0>100
,
M0“ON”
,当
D0=100
,
M1“ON”<
/p>
●
目标地址指定
,则
M1
、
被自动占用;
●
当
X001“OFF”
时,
M0
、
M1
、
M2
仍保持以前状态。如当
D0
的内容为
50
,则
50
<100,
,
M
0
、
M1
都
“
OFF”
,
X001“OFF”
时,<
/p>
M2
仍
“ON”
。
M2“ON”
指令不执行时,想要清楚比较结果,可使用复位指令。
4.3.2
区域比较『
ZCP
』
16<
/p>
位指令
ZCP
(连续执行型)
7
步
ZCPP
(脉冲执行型)
32
位指令
DZCP
(连续执行型)
13
步
DZCPP
(脉冲执行型)
适用软元件
•
字软元件(
S1•
、
S2•
、
S
•
)
K
、
H
、
KnX
、
KnY
、
KnM
、
KnS
、
T
、
C
、
D
、
V
、
Z
•
p>
位软元件(
D•
)
Y
、
M
、
S
功能和动作
● <
/p>
如上例,
D3
的内容与
< br>D1
、
D2
的内容进行比较;<
/p>
●
D
1
p>
的内容应小于等于
D2
的内容,若
D1=100
,
D2=80
,比较时
D2
的内容为
100
p>
;
;
●
按代数形式进行比较(
-8<0
)
;
当
D1≤D3≤D2
,则
M4“ON”
,
当
D2
,则<
/p>
M5“ON”
。
●
当
D1
>D3
,则
M3“ON”
4.3.3
传送指令『
MOV
』
16<
/p>
位指令
MOV
(连续执行型)
7
步
MOVP
(脉冲执行型)
32
位指
令
DMOV
(连续执行型)
13
步
DMOVP
(脉冲执行型)
适用软元件
•
字软元件(
S•
)
K
、
H
、
KnY
、
KnM
、
KnS
、
T
、
C
、
D
、
V
、
Z
•
字软元件(
D•
)
KnY
、
KnM
、
KnS
、
T
、
C
、
D
、
V
、
Z
功能和动作
使数据原样传送的指令。
● <
/p>
将源(
S•
)向目标(
p>
D•
)传送,
X003“OF
F”
时,目标(
D•
)的
内容不变化;
●
常数
K100
被自动转换成
BIN
码。
《定时、计数器的当前值读出示例》
●
将<
/p>
T0
当前值传送给
D20
。
《定时、计数器设定值间接指定示例》
●
T20
定时时间为
5
秒
《位软元件的传送》
●
上图
示例可用下面的
MOV
指令来实现
《
32<
/p>
位数据的传说》
运算结果是
32
位的应用指令(
MUL
等)
、
32
位数据、
32
位软元件或
32
位计数器
等
32
位数据的传送,
必须适用
DMOV
指令。
,
●
上例将(
D11
、
D10
)的内容传送给(
D21
、
D20
)
。
(
C23
5
的当前值)传送给(
D31
、
D30
)
4.3.4
反向传送『
CML
』
16
位指
令
CML
(连续执行型)
5
步
CMLP
(脉冲执行型)
32
位指令
DCML
(连续执行型)
13
步
DCMLP
(脉冲执行型)
适用软元件
•
字软元件(
S•
)
K
、
H
、
KnX
、
KnY
、
KnM
、
KnS
、
T
、
C
、
D
、
V
、
Z
•
字软元件(
D•
)
KnY
、
KnM
、
KnS
、
T
、
C
、
D
、
V
、
Z
功能和动作
使数据反向传送的指令
● <
/p>
将
D0
的内容每位取反
< br>(
0
取反为
1
< br>,
1
取反为
0
< br>)
后,
传送到目标地址,
常数<
/p>
K
被自动转换成
2
进制。
如:
D10
● <
/p>
上例可用
CML
指令来实现。
4.3.5
BCD
转换『
BCD
』
16<
/p>
位指令
BCD
(连续执行型)
5
步
BCDP
(脉冲执行型)
32
位指令
DBCD
(连续执行型)
9
步
DBCDP
(脉冲执行型)
适用软元件
•
字软元件(
S•
)
KnY
、
KnM
、
KnS
、
T
、
C
、
D
、
V
、
Z
< br>•
字软元件(
D•
)
KnY
、
KnM
、
KnS
、
T
、
C
、
D
、
V
、
Z
-
-
-
-
-
-
-
-
-
上一篇:人教版高中英语必修6单词表
下一篇:游戏推广方案