PLC功能指令和应用Word文档格式.docx

上传人:b****6 文档编号:16973710 上传时间:2022-11-27 格式:DOCX 页数:28 大小:23.46KB
下载 相关 举报
PLC功能指令和应用Word文档格式.docx_第1页
第1页 / 共28页
PLC功能指令和应用Word文档格式.docx_第2页
第2页 / 共28页
PLC功能指令和应用Word文档格式.docx_第3页
第3页 / 共28页
PLC功能指令和应用Word文档格式.docx_第4页
第4页 / 共28页
PLC功能指令和应用Word文档格式.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

PLC功能指令和应用Word文档格式.docx

《PLC功能指令和应用Word文档格式.docx》由会员分享,可在线阅读,更多相关《PLC功能指令和应用Word文档格式.docx(28页珍藏版)》请在冰豆网上搜索。

PLC功能指令和应用Word文档格式.docx

(1)16bit和32bit

功能指令可处置16位(bit)的数据和32(bit)位数据.功能指令中附有符号(D)表示处置32位(bit)数据.如(D)MOV,FNC(D)12,FNC12(D).

处置32bit数据时,用元件号相邻的两个元件组成元件对.元件对的元件号用奇数,偶数都可.但为幸免错误,元件对的首元件建议统一用偶数编号.

32bit计数器(C200~C255)不能用作16bit指令的操作数.

(2)持续执行/脉冲执行

助记符后附有(P)符号表示脉冲执行,没有(P)符号的表示持续执行.

(P)和(D)可同时利用,如(D)MOV(P)表示32bit数据传送,脉冲执行.

例如以下图:

图中仅在X0由OFF变成ON时执行D10到D12间的数据传(只传送一次),不需要每一个扫描周期都执行.

当X1为ON时在每一个扫描周期都被重复执行D20数据到D22的传送.

当X0,X1为OFF时上述两个传送都不执行.在利用PLC编程时,若是在程序中的数据不随时转变,而且转变是可控的,如此的数据传送就可用脉冲方式.

例如,INC指令含义是加1.若是每一个运行周期都执行一次加1,其运行结果将无法确信.用持续方式时要专门注意.这些指令用"

!

"

号表示.

有些指令,例如XCH,INC,DEC等

位元件和字元件

只处置ON/OFF状态的元件,例如X,Y,M,和S,称为位元件.

其它处置数字数据的元件,例如T,C和D,称为字元件.而位元件组合起来也可处置数字数据.

位元件的字能够由Kn加首元件号来表示.位元件每4bit为一组合成单元,KnM0中的n是组数.16bit数据操作时为K1~数据操作时为K1~K8.

例如,K2M0即表示由M0~M7组成2个4bit组.

当一个16bit的数据传送到K1M0,K2M0或K3M0(利用MOV指令)时,只传送相应的低位(bit)数据.较高位的数据不传送.32bit数据传送时也一样.

例如

1

M15M14M13M12M11M10M9M8M7M6M5M4M3M2M1M0

传送后D0寄放器的数据如下:

假设X1为ON时用持续传送的方式传送M0~M7组成的8位二进制数到D0数据寄放器.传送前的M0~M15组成的16bit数如下:

由于数据高8位没有在指令中概念而不能传送,16位(bit)数据的符号位(最高位)为0,现在只能处置正数.

由上述例子可知,在作16位(bit)数据操作,而参与操作的元件由K1,K2,K3来指按时,高位(不足部份)均作0.这就意味着只能处置正数(符号位为0).在作32bit数据操作,参与操作的元件由K1~K7来指按时也一样.

变址寄放器(V,Z)

变址寄放器在传送,比较指令中来修改操作对象的元件号.

其操作方式与一般数据寄放器一样.操作元件包括,KnX,KnY,KnM,KnS,T,C,D,V,Z.其中KnY,KnM,KnS,T,C,D,V,Z可加入变址寄放器.

对32bit指令,V作高16bit,Z作低指令顶用到变址寄放器时只需指定Z,这是Z就代表了V和Z.

如上图所示:

X0为ON时,K10(十进制数10)送到为ON时,K20(十进制

数20)送到Z.

当X2为ON时所作的加法

(D5V)+(D15Z)→(D40Z)

(D15)+(D35)→(D60).M8000是内部特殊寄放器(常ON),即无条件将十进制常数0(K0)送入V,现在(V),(Z)的数据为0和20.

当X3为ON时执行(D)ADD指令,作32bit数据加法

(D0)+(D2)→(D4Z)

确实是(D1,D0)+(D3,D2)→(D25,D24)

程序流程操纵

指令:

CJFNC00(P)(16)条件转移

操作元件:

指针P0~P127(许诺变址修改)

P63即END,无需再标注

程序步数:

CJ和CJ(P)……3步

标号P×

×

……1步

梯形图

功能:

用于跳过顺序程序中的某一部份,如此能够减少扫描时刻,并使双线圈操作成为可能.若是X0为ON那么跳到标记P8处继续执行.

CALLFNC01(P)(16)

转子程序

指针P0~P127(许诺变址

修改)

CALL和CALL(P)…3步标

号P×

……1步

嵌套:

5级

用于特定条件下执行某个子程序,可减少程序重复.若是X0为ON那么挪用P10为标记的子程序执行.在执行子程序时也可挪用子程序,可嵌套5级.

SRETFNC02子程序返

1步

与CALL指令对应的子程序终止返回CALL指令后的程序顺序执行.

中断效劳程序的终止标记.在程序执行到IRET指令后表示该中断效劳终止.该指令后的程序许诺中断,直到DI指令显现.

IRETFNC03中断返回操作元件:

EIFNC04许诺中断

该指令后的程序许诺中断,直到DI指令显现.

该指令后的程序不可中断,直到EI指令显现.

DIFNC05禁止中断断返回

执行到FEND时进行输出处置,输入处置,警戒时钟刷新后回到第0步.

FENDFNC06主程序终止

假设扫描周期超过100ms,PLC将停止运行.现在,应将WDT指令插入到适合的位置刷新警戒时钟,使程序执行到END.

WDTFNC07(P)警戒时钟

FOR-NEXT间的程序重复执行"

n"

次后,NEXT指令后的程序才被执行.利用CJ指令可跳出循环体.FOR-NEXT间还可利用FOR-NEXT指令.循环指令最多许诺5级嵌套.

FORFNC08(16)

循环区起点

3步

NEXTFNC09循环区终点

1步

梯形图:

同上

与FOR配对利用

传送和比较

将[S1·

]与[S2·

]比较,结果由[D·

]决定的M0开始的三个内部寄放器输出,可驱动各类动作.

CMPFNC10(P)(16/32)比较操作元件

CMP和CMP(P)…7步

(D)CMP和(D)CMP(P)…13步

功能

将[S·

]与[S1·

][S2·

]的区间比较,结果有[D·

]指定的M3始的三个寄放器输出.当S小于该区间时M3为ON,S在该区间时M4为ON,S大于该区间时M5为ON

ZCPFNC11(P)(16/32)区间

比较

ZCP和ZCP(P)…9步

(D)ZCP和(D)ZCP(P)…17步

操作元件

传送和比较

梯形图表达

X0=ON时,K100→(D10)

X0=OFF时指令不执行

MOVFN12(P)(16/32)传送

MOV和MOV(P)…5步

(D)MOV和(D)MOV(P)…9步

]指定的源数据传

送到[D·

]指定的目标

寄放器.

X0=ON时,将(D0)取反→(K1Y0)

若是X0=OFF时,指令不执行

CMLFNC14(P)(16/32)取反传送

CML和CML(P)…5步

(D)CML和(D)CML(P)…9步

将源数据取反并传送到

目标.(K1Y0)指以Y0为首

元件的4个元件组成的一个

字节(4bit).

梯形图表达:

源数据BCD码右起第4位(m1=4)

开始的2位(m2=2)移到目标的第3位

转换为二进制,其中第1,4位不受

移位指令的阻碍.

SMOVFNC13(P)(16)位移传送程序步数:

SMOV和SMOV(P)…11步

将源数据(二进制)转换

为BCD码,然后将BCD码移

位传送,然后将目标中的

码值超过9999时犯错.

当X0=ON时,将寄放器(D5,D6,D7)数据传送到3目标(D10,D11,D12)

BMOVFNC15(P)(16)块传送程序步数:

BMOV和BMOV(P)…7步

从源操作数指定的元件开始的n个数据组成的数据块传送到目标.一旦传送,传送一组数据.

将K0传送到D0~D9

FMOVFNC16(P)(16)多点

传送

FMOV和FMOV(P)…7步

相同数据送到多个目标.将源元件中的数据传送到指定目标开始的n个元件中.

互换前:

(D10)=110,(D11)=100

互换后:

(D10)=100,(D11)=110

XCHFNC17(P)(16/32)("

互换

XCH和XCH(P)…5步(D)XCH

和(D)XCH(P)…9步

互换目标元件中的数据.

将(D12)中的数据转换成BCD码送到

Y0开始的两个(4bit)字节(Y0~Y7)中

BCDFNC18(P)(16/32)二进制转

换成BCD码

BCD和BCD(P)…5步

(D)BCD和(D)BCD(P)…9步

将源元件中的二进制数转换成BCD码送到目标元件中.

将X0开始的两个(4bit)字节(X0~X7)

中的BCD码数据转换成二进制数送到(D13)

中.

BINFNC19(P)(16/32)BIN变换

BIN和BIN(P)…5步

(D)BIN和(D)BIN(P)…9步

将源元件中的BCD码转换

成二进制数送到目标元件中.

四那么运算及逻辑运算

当X0=ON时,执行

(D10)+(D12)→(D14)

结果为0时,M8020置1;

ADDFNC20(P)(16/32)加法

ADD和ADD(P)…7步

(D)ADD和(D)ADD(P)…13步

标志:

M8020(零标志);

M8021(借位);

M8022(进位)

指定源元件中的二进制

数相加,结果送到指定的目标

符号为(0为正,1为负).运

算为代数运算.

结果大于32767(16bit)或47(32bit)

时进位标志M8021置1;

结果小于-32767(16bit)或-47

(32bit)时借位标志M8022置1.

当X0=ON,

执行(D10)-(D12)→D14)

当X1=ON一次,

执行一次(D1,D0)-1→(D1,D0)

SUBFNC21(P)(16/32)BIN减法程序步数:

SUB和SUB(P)…7步

(D)SUB和(D)SUB(P)…13步

指定源元件中的二进制数相减,结果送到指定的目标元件.其余同ADD指令.

当X0=ON时执行16bit运

算(D0)×

(D2)→(D5,D4)

当X1=ON时执行32bit运算

(D1,D0)×

(D3,D2)→(D7,D6,D5,D4)

MULFN22(P)(16/32)BIN乘法

MUL和MUL(P)…7步

(D)MUL和(D)MUL(P)…13步

两个源数据的乘积以32bit形式送到指定目标.低16bit在指定目标,高16bit在下一个元件中.

当X0=ON时执行16bit运算

(D0)÷

(D2)→(D4)……(D5)

当X1=ON时,执行32bit运算

(D1,D0)÷

(D3,D2)→(D5,D4)

……(D7,D6)

DIVFNC23(P)(16/32)BIN除法

DIV和DIV(P)…7步

(D)DIV和(D)DIV(P)…13步

V和Z不能用于目标地址.

用[S1·

]指定的被除数除以用[S2·

]指定的除数,商

和余数送到[D·

]指定的目标及以后的几个持续元件.

当X0由OFF变ON时,

执行(D10)+1→(D10)

INCFNC24(P)(16/32)"

加1

INC,INC(P),3步

(D)INC,(D)INC(P)13步

输入条件由OFF变ON

时,执行[D·

]指定的目标数

据增加1

当X1由OFF变ON时,

执行(D10)-1→(D10)

DECFNC25(P)(16/32)"

减1

DEC和DEC(P)…3步

(D)DEC和(D)DEC(P)……13步

输入条件由OFF变ON时,执行[D·

]指定的目标数据减少1

(D10)∧(D12)→(D14)

ANDFNC26(P)(16/32)逻辑

与"

16bit操作7步

32bit操作13步

以bit为单位的逻辑与运

算.将[S1·

][S2·

]指定的源数

据进行逻辑"

运算后结果

存入[D·

]的目标单元

(D10)∨(D12)→(D14)

ORFNC27(P)(16/32)逻辑"

或"

]的目标单元.

(D10)(D12)→(D14)

XORFNC28(P)(16/32)逻辑"

]指定的源数据

进行逻辑"

异或"

(D10)+1→(D10)

NEGFNC29(P)(16/32)求补

NEG和NEG(P)…3步

(D)NEG和(D)NEG(P)…5步

将[D·

]指定数据的每一名

都取反,然后该数加1,结

际是绝对值不变的变号操

作.

循环移位与移位

每次X0由OFF→ON时各bit

数据向右旋转"

bit,最后一

次从最高位移出的状态存于

进位标志M8022中.

RORFNC30(P)(16/32)"

右循环

ROR,ROR(P))…5步

]指定的数据右移n

决定的位数,最低位移出的

状态存于进位标志M8022

每次X0由OFF→ON时各bit数

据向右旋转"

bit,最低位移出

的进位标志M8022同时参与移

位.

RCRFNC32(P)(16/32)"

带进位右循环移位

…5步

本指令使[D·

]指定的

(16/32bit)数据连同进位标志

一路向右循环移位n决定的

位数.

每次X10由OFF→ON时,[D]内各

位数据连同[S]内4位数据向右移动4bit

X0~X3组成的4bit数据从高端移入而

(M0~M3)4位溢出.

SFTRFNC34(P)(16/32)"

位元件状态右移位

…9步

本指令使bit元件中的状态

向右移位,由n1指定bit元件

的长度,n2指定移位数.

操作元件(其中n2≤n1≤1024)

每次X10由OFF→ON时,D10~D2516字数据连同[S]内D0~D34字数据向右移动4bitD0~D3从高端移入而(D10~D13)从低端移出.

WSFRFNC36(P)(16/32)

元件状态(字)右移

WSFR,WSFR(P)…9步

本指令使字元件中的状态向右移位,由n1指定字元件长度,n2指定移位字数.

操作元件(其中n2≤n1≤512)

当X0由OFF→ON时,D0中的数据写入

D2,而D1内的数据变成1(指针).D0数据

改变后X0再由OFF→ON时,DO中的数据

写入D3,D1中的数据变成2.依此类推.

直到D1内数据为n-1上述指令再也不执行

SFWRFNC38(P)(16/32)"

先入先出FIFO写入

SFWR,SFWR(P)…7步

M8022(进位)WSFR,

本指令是FIFO(先入先

[S·

]指定的数据写入[D·

的第二位开始的长度为n指定

的寄放器内,[D·

]指定的第一

不执行本操作.

操作元件(其中2≤n≤512)

每次X1由OFF→ON时,D2内的数

据读入D20,同时指针(D1)减1,从

用该指令,那么每次执行数据向右移1

字.直到D1为0,再也不执行该指令.

SFRDFNC39(P)(16/32)"

先入先出FIFO读出

SFRD,SFRD(P)…7步

M8020进位)

本指令是FIFO(先入先出)控

制数据读出指令.将[S·

]指定的第

二个寄放器开始的长度为n数据

读到[D·

]指定的寄放器内,[S·

]指

时不执行本操作.

数据处置

PLC送电运行时M500~M599,C235~C255成批复位

注:

[D1·

][D2·

]指定同一元件,[D1·

]号≤[D2·

]号

ZRSTFNC40(P)(16)区间复位

ZRST,ZRST(P)…7步

用于一批元件的同时复位.

如操纵程序的初始化处置等.

当X4=ON时,X3,X2,X1组成的二进

制数等于几,就将M10~M17对应的M×

置1.假设[D·

]指定目标是T,C,或D,应使

n≤4.

DECOFNC41(P)(16/32)解码

DECO,DECO(P)…7步

]指定的源元件和n指定的个数,组成二进制数等于几,就将[D·

]指定的目标开始的8个寄放器中的对应位置的寄放器置1.

操作元件(其中n=1~8)

当X5=ON时,M10~M17对应的M×

1.就将该位对应的二进制数送到D12,

D11,D10组成的寄放器组内.假设[S·

]指定目

标是T,C,D,V或Z,应使n≤

的源中为1的不止一处时,那么只有最高位的

1有效.假设指定源中所有bit均为0,那么出

错.

ENCOFN42(P)(16)编码

ENCO,ENCO(P)…7步

]指定的源元件开始的8个寄放器中为1的位,以二进制数输出到[D·

]指定的目标和n指定的个数组

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1