PAGE1
PAGE1
功能指令使用详解
1.概述
在Mitsubishi系列的Q系列PLC中,功能指令是实现复杂控制逻辑和数据处理的重要工具。这些指令通常用于执行特定的数学运算、逻辑处理、数据传输、定时计数、PID控制等任务。本节将详细介绍Q系列PLC中常用的功能指令,包括其原理、使用方法和具体示例。
2.数据传输指令
2.1MOV(数据移动)
原理:MOV指令用于将一个数据从源地址移动到目标地址。该指令支持多种数据类型,包括位、字节、字和双字。
语法:
MOV(S),(D)
(S):源地址
(D):目标地址
示例:
假设我们需要将D10中的16位整数移动到D20中。
MOVD10,D20
2.2ZMOV(零条件数据移动)
原理:ZMOV指令在条件为零时,将一个数据从源地址移动到目标地址。如果条件不为零,则不执行移动操作。
语法:
ZMOV(S),(D),(C)
(S):源地址
(D):目标地址
(C):条件地址
示例:
假设我们需要在D30为零时,将D10中的16位整数移动到D20中。
ZMOVD10,D20,D30
2.3BMOV(批量数据移动)
原理:BMOV指令用于将多个数据从源地址批量移动到目标地址。支持多种数据类型,包括位、字节、字和双字。
语法:
BMOV(S),(D),(N)
(S):源地址
(D):目标地址
(N):数据数量
示例:
假设我们需要将D10到D15中的6个16位整数批量移动到D20到D25中。
BMOVD10,D20,6
3.数学运算指令
3.1ADD(加法)
原理:ADD指令用于将两个数相加,并将结果存储在目标地址中。支持多种数据类型,包括16位和32位整数。
语法:
ADD(S1),(S2),(D)
(S1):第一个源地址
(S2):第二个源地址
(D):目标地址
示例:
假设我们需要将D10和D11中的16位整数相加,并将结果存储在D20中。
ADDD10,D11,D20
3.2SUB(减法)
原理:SUB指令用于将两个数相减,并将结果存储在目标地址中。支持多种数据类型,包括16位和32位整数。
语法:
SUB(S1),(S2),(D)
(S1):第一个源地址
(S2):第二个源地址
(D):目标地址
示例:
假设我们需要将D11从D10中减去,并将结果存储在D20中。
SUBD10,D11,D20
3.3MUL(乘法)
原理:MUL指令用于将两个数相乘,并将结果存储在目标地址中。支持多种数据类型,包括16位和32位整数。
语法:
MUL(S1),(S2),(D)
(S1):第一个源地址
(S2):第二个源地址
(D):目标地址
示例:
假设我们需要将D10和D11中的16位整数相乘,并将结果存储在D20中。
MULD10,D11,D20
3.4DIV(除法)
原理:DIV指令用于将两个数相除,并将结果存储在目标地址中。支持多种数据类型,包括16位和32位整数。
语法:
DIV(S1),(S2),(D)
(S1):第一个源地址
(S2):第二个源地址
(D):目标地址
示例:
假设我们需要将D10除以D11,并将结果存储在D20中。
DIVD10,D11,D20
4.逻辑运算指令
4.1AND(逻辑与)
原理:AND指令用于将两个数进行逻辑与运算,并将结果存储在目标地址中。支持多种数据类型,包括位、字节、字和双字。
语法:
AND(S1),(S2),(D)
(S1):第一个源地址
(S2):第二个源地址
(D):目标地址
示例:
假设我们需要将D10和D11中的16位整数进行逻辑与运算,并将结果存储在D20中。
ANDD10,D11,D20
4.2OR(逻辑或)
原理:OR指令用于将两个数进行逻辑或运算,并将结果存储在目标地址中。支持多种数据类型,包括位、字节、字和双字。
语法:
OR(S1),(S2),(D)
(S1):第一个源地址
(S2):第二个源地址
(D):目标地址
示例:
假设我们需要将D10和D11中的16位整数进行逻辑或运算,并将结果存储在D20中。
ORD10,D11,D20
4.3XOR(逻辑异或)
原理:XOR指令用于将两个数进行逻辑异或运算,并将结果存储在目标地址中。支持多种数据类型,包括位、字节、字和双字。
语法:
XOR(S1),(S2),(D)
(S1):第一个源地址
(S2):第二个源地址
(D):目标地址
示例:
假设我们需要将D10和D11中的16位整数进行逻辑异或运算,并将结果存储在D20中。
XORD10,D11,D20
5.比较指令
5.1CMP