工控智汇

工控智汇

PLC功能指令中的操作数符号表示方法及解释

admin 154 37

示例说明:

一个简易保安系统,在规定次数(如5次)的范围内,若密码不正确将启动报警系统,并关闭安全通道。若规定的次数内密码正确,进入密级操作。

流程示意图:

梯形图:

二、功能指令

下面功能指令中的操作数符号表示方法及解释。

:表示数据源。内容不随指令执行而变化的操作数称为源。

在可变址修改软元件编号的情况下,加上“·”符号的表示。源的数量多时,以、等表示。

:表示目标操作数。内容随指令执行而改变的操作数被称作目标。

可作变址修饰时,加上“·”符号的表示.

在目标数量多时,以、等表示。

:以或表示既不做源,也不做目标的操作数。

这样的操作数数量很多时,以、、、等表示。

可用作操作数的软元件

A、X,Y,M,S等位元件。

B、位元件组合。以KnX,KnY,KnM,KnS等形式表示,作为数值处理。

C、数据寄存器D、定时器T的当前值寄存器、计数器C的当前值寄存器。

l数据寄存器D为16位,在处理32位数据时使用一对数据寄存器的组合。

例如,将数据寄存器D0指定为32位指令的操作数时,处理(D1,D0)32位数据(D1为高16位,D0为低16位)。

lT、C的当前值寄存器也可作为一般寄存器处理。

1、程序流程

分类

指令助记符

功能

页码

CJ

条件跳转

CALL

子程序调用


SRET

子程序返回


FEND

主程序结束


FOR

循环范围开始


NEXT

循环范围结束


A、CJCALL指针编号可作变址修改;嵌套最多可为5层;对子程序返回无适用软元件。

B、.当程序使用多个FEND指令时,子程序请在最后的FEND指令与END指令之间编写,

FOR~NEXT嵌套最多5层。

2、比较指令[CMP]

适用软元件

·字软元件(S1·、S2·)K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z

·位软元件(D·)Y、M、S

l上图示例是D0的内容与常数100进行比较,大小比较是按代数形式进行的(-80);

l所有数据都以2进制值处理;

l当D0100,M0“ON”,当D0=100,M1“ON”,当D0100,M2“ON”;

l目标地址指定M0,则M1、M2被自动占用;

l当X001“OFF”时,M0、M1、M2仍保持以前状态。如当D0的内容为50,则50100,M2“ON”,M0、M1都“OFF”,X001“OFF”时,M2仍“ON”。

指令不执行时,想要清除比较结果,可使用复位指令。

3、传送指令[MOV]

适用软元件

·字软元件(S·)K、H、KnY、KnM、KnS、T、C、D、V,Z

·字软元件(D·)KnY、KnM、KnS、T、C、D、V,Z

功能和动作使数据原样传送的指令。

l将源(S·)的内容向目标(D·)传送,X003“OFF”时,目标(D·)的内容不变化;

4、反向传送[CML]

适用软元件

·字软元件(S·)K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z

·字软元件(D·)KnY、KnM、KnS、T、C、D、V,Z

功能和动作将数据反向传送的指令

l将D0的内容每位取反(0取反为1,1取反为0)后,传送到目标地址,常数K被自动转换成2进制。如:

D10

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

符号位(0=正数,1=负数)

0

1

0

1

0

1

0

1

Y17Y16Y15Y14Y13Y12Y11Y10Y7Y6Y5Y4Y3Y2Y1Y0

无变化反向数据被传送

5、加法运算[ADD]

适用软元件

·字软元件(S1·、S2·)K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z

·字软元件(D·)KnY、KnM、KnS、T、C、D、V,Z

标志位

M8020

借位

M8021


进位

M8022


功能和动作

l两个源数据进行加法后传送到目标处,各数据的最高位是符号位(正数为0,负数为1),数据以代数形式进行加法运算(8+(-8)=0)。

l运算结果为0时,0标志位M8020动作;运算结果超出32767(16位运算)或2147483647(32位运算)时,进位标志位M8022动作;运算结果小于-32768(16位运算)或-2147483648(32位运算)时,借位标志位M8021动作;

l进行32位运算时,字软元件的低16位侧的软元件被指定,紧接着上述软元件编号后的软元件作为高位,为了防止编号重复,建议将软元件指定为偶数编号。

l对于脉冲型指令,每出现一次OFF到ON的变化,操作数做一次运算。

l可以将源(S·)和目标(D·)指定为相同的软元件编号。这种情况下,如使用连续执行型指令(ADD、DADD),则每个扫描周期加一次,请务必注意。

6、减法运算[SUB]

适用软元件

·字软元件(S1·、S2·)K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z

·字软元件(D·)KnY、KnM、KnS、T、C、D、V,Z

标志位

M8020

借位

M8021


进位

M8022


功能和动作

l(S1·)指定的内容和(S2·)指定的内容相减,结果存入(D·)指定的软元件中。(8-(-8)=16)。

l各种标志位的动作,32位运算软元件的指定方法,连续型和脉冲型的差异等都跟ADD指令相同。

7、乘法运算[MUL]

适用软元件

·字软元件(S1·、S2·)K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z

·字软元件(D·)KnY、KnM、KnS、T、C、D、V,Z

功能和动作

BINBINBIN

(D0)×(D2)(D5,D4)

16位16位32位

l各源指定的软元件内容的乘积,以32位数据形式存入目标地址指定的软元件(低位)和紧接其后的软元件(高位)中,如(D0)=125,(D2)=8,则(D5,D4)=1000;

l结果的最高位是符号位,0为正,1为负;

l(D·)是位元件时,可以进行K1∽K8的位指定。指定为K4时,只能求得乘积运算的低16位。

8、除法运算[DIV]

适用软元件

·字软元件(S1·、S2·)K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z

·字软元件(D·)KnY、KnM、KnS、T、C、D、V,Z

功能和动作

被除数除数商余数

BINBINBINBIN

(D0)÷(D2)(D4)···(D5)

16位16位16位16位

9、增1[INC]

适用软元件

·字软元件(D·)KnY、KnM、KnS、T、C、D、V,Z

功能和动作

(D0)+1(D0)

lX000每置“ON”一次,D0的内容增1,在连续执行指令中,每个扫描周期执行加1运算,所以务必引起注意;

l16位运算时,如果32767加1变为-32768,标志位不动作

10、减1[DEC]

适用软元件

·字软元件(D·)KnY、KnM、KnS、T、C、D、V,Z

功能和动作

(D0)—1(D0)

X001每置“ON”一次,D0的内容减1,在连续执行指令中,每个扫描周期执行减1运算,所以务必引起注意;

l–32768或-2147483648减1变为32767或2147483647,标志位不动作

11、逻辑与[WAND]

适用软元件

·字软元件(S1·、S2·)K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z

·字软元件(D·)KnY、KnM、KnS、T、C、D、V,Z

(D0)∧(D2)(D4)

l对各位进行逻辑与运算。

1∧1=10∧1=0

1∧0=00∧0=0

12、逻辑或[WOR]

(D0)∨(D2)(D4)

l对各位进行逻辑或运算。

1∨1=10∨1=1

1∨0=10∨0=0

13、逻辑异或[WXOR]

(D0)((D2)(D4)

l对各位进行逻辑异或运算;

1(1=00(1=1

1(0=10(0=0

l如果将这个指令与CML组合使用,将进行异或非运算。

求补[NEG]

适用软元件

·字软元件(D·)KnY、KnM、KnS、T、C、D、V,Z

(D10)+1(D10)

l将(D·)指定的软元件内容中各位先取反(0变1,1变0),然后再加1,将其结果存入原先的软元件中;

使用连续执行指令则在每一个扫描周期执行一次,务必引起注意。

14、触点比较指令

适用软元件

·字软元件(S1·、S2·)K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z

接点比较指令[LD※]

※表示:=、、、、≦、≧。

指令

导通条件

非导通条件

LD=

(S1·)=(S2·)

(S1·)≠(S2·)

LD

(S1·)(S2·)

(S1·)≦(S2·)

LD

(S1·)(S2·)

(S1·)≧(S2·)

LD

(S1·)≠(S2·)

(S1·)=(S2·)

LD≦

(S1·)≦(S2·)

(S1·)(S2·)

LD≧

(S1·)≧(S2·)

(S1·)(S2·)

l当计数器C0的当前值为100时,驱动。

l当D0的内容大于-100,且X000处于“ON”时,驱动Y1。

接点比较指令[AND※]

16指令

导通条件

非导通条件

AND=

(S1·)=(S2·)

(S1·)≠(S2·)

AND

(S1·)(S2·)

(S1·)≦(S2·)

AND

(S1·)(S2·)

(S1·)≧(S2·)

AND

(S1·)≠(S2·)

(S1·)=(S2·)

AND≦

(S1·)≦(S2·)

(S1·)(S2·)

AND≧

(S1·)≧(S2·)

(S1·)(S2·)

l当X000处于“ON”时,且计数器C10的当前值等于100时,驱动Y3。

l当X001处于“ON”时,且D0的内容不等于10时,置位Y4。

接点比较指令[OR※]

16指令

导通条件

非导通条件

OR=

(S1·)=(S2·)

(S1·)≠(S2·)

OR

(S1·)(S2·)

(S1·)≦(S2·)

OR

(S1·)(S2·)

(S1·)≧(S2·)

OR

(S1·)≠(S2·)

(S1·)=(S2·)

OR≦

(S1·)≦(S2·)

(S1·)(S2·)

OR≧

(S1·)≧(S2·)

(S1·)(S2·)

l当X001处于“ON”,或计数器C10的当前值等于100时,驱动Y1

三、变址寄存器V、Z说明

V、Z的显著作用是能够和其它软元件或数值组合使用,从而动态修改软元件编号或数值内容。

修改说明:Z=1,V=6。

MOVK1X000ZK1Y010Z等同于MOVK1X001K1Y011;

MOVK4X000K4M3V等同于MOVK4X000K4M9;

MOVK4M3VK4S0V等同于MOVK4M9K4S6;

MOVK1000C1Z等同于MOVK10000C2;

MOVK2000T3Z等同于MOVK20000T4;

MOVK3000D0Z等同于MOVK30000D1;

MOVK40ZD100V等同于MOVK41D106;

MOVH00FFD101V等同于MOVH0100D107;

CALLP0Z等同于CALLP1;

四、专家指令PID运算

D100:参数,为S3S3+0:KP参考值:2000

S3+1:KI参考值:500S3+2:KD参考值:0

S3+3:E(T)S3+4:E(T-1)

S3+5:e(t)-e(t-1)S3+6:e(t-1)-e(t-2);

S3+7:e(t)-2e(t-1)+e(t-2)S3+8:增量

S3+9:输出,限制为12位Max=2048(旧版8位DA的为255);