三菱FX系列plc指令详解

三菱FX系列plc指令详解
三菱FX系列plc指令详解

三菱FX系列plc指令集锦

1、LD 取一常开触点指令

2、LDI 取一常闭触点指令

3、AND 串联一常开触点

4、ANI 串联一常闭触点

5、OR 并一常开触点

6、ORI 并一常闭

7、ANB 并联回路的“与”运算

8、ORB 并联回路的“或”运算

9、MPS 累加器结果的进栈堆

10、MRD 读取栈内容

11、MPP 堆栈移出内容

12、PLS 上升沿输出

13、PLF 下降沿输出

14、LDP 上升沿读入累加器

15、LDF 下降沿读入累加器

16、ANDP 累加器内容与上升沿“与”运算

17、ANDF 累加器内容与下降沿“与运算

18、ORP 累加器内容与上升沿“或”运算

19、ORF 累加器内容与下降沿“或”运算

20、MC 生产主控母线(操作数Y、M)

21、MCR 生产主控母线复位指令

22、示教式定时设定的应用制定功能指令TTMR(FNC64)

注释:“K2”常数0—2设定定时设定值与按键输入时间的比例

1)、当K=0时,定时设定与按键输入比例为1:1

2)、当K=1时,定时设定与按键输入比例为1:10

3)、当K=2时,定时设定与按键输入比例为1:100

TTMR实际改变的是数据寄存器的存储数据,故需要进行示教式设定的定时器必须用数据寄存器D来设定时间。(精度比较差)

23、任意频率的时钟生成

M8011(10Ms)M8012(100Ms)M8013(1S)M8014(60S)

任意周期时钟脉冲信号可利用STMR指令的特性,通过以下程序生成。

24、高速比较指令(DHSZ)

25、高速置位/复位指令(DHSCS/DHSCR)FNC53/FNC54用于计数器的比较与输出的直接控制

注释:高速计数器C241为带复位输入(X1)的单相高速输入计数器,使用DHSCS后,只要计数器值达到1000后,y0置1(不受PLC时间的限制),而使用DHSCR后,只要计数值到达2000,就可以使Y0置为0。

26、高速比较指令(DHSZ) FNC 55

注释:K1000为比较下限

K2000为比较上限

27、速度测量(SPD) FNC56(脉冲密度指令)可以计算单位时间内的输入脉冲数,可用于以位置脉冲形式输出的机械装置速度的实时测量。

注释:X000 脉冲输入端,X000=1时启动速度测量,PLC开始累计高速输入的输入脉冲数,当采样时间到达、plc立即将计数值写入到指定的存储单元,同时将计数值清0,重新开始累积输入脉冲。【只要X000=1,则上述动作不断重复】

功能指令

28、初始化复位ZRST(FNC40)

29、状态初始化IST(FNC60)

30、FX3U系列功能指令

1)、MTR(FNC52)矩阵扫描面板输入处理

2)、PWM (FNC58) 脉宽调制指令

3)、IST(FNC60)状态元件的初始化

4)、ABSD(FNC62)凸轮控制(绝对方式)

5)、INCD(FNC63)凸轮控制(增量方式)

6)、ROTC(FNC68)旋转工作台控制

7)、SORT(FNC69)数据排列

8)、TKY(FNC70)十进制数字输入键处理

9)、HKY(FNC71)十六进制数字输入键处理

10)、DSW(FNC72)BCD码开关输入处理

11)、SEGL (FNC74) 七段数码管组成显示

12)、ARWS (FNC75)数值增/减输入与七段数码管显示

13)、PR(FNC77)8字符ASCII码直接输出

14)、PLSY(FNC57)脉冲输出

15)、PLSR(FNC59)带加减速的高速脉冲输出

16)、SPD(FNC56)速度检测

17)、SORT2(FNC149)数据排列2

18)、DUTY(FNC186)PLC循环时钟脉冲

19)、DHSCT(FNC280) G高速计数成批比较

31、变址寄存器内容的保护指令ZPUSH(FNC102) 一次性保存到指定额数据寄存器中,或过应用指令ZPOP(FNC103)予以一次性恢复。

32、条件跳转(CJ)FNC00 逻辑处理结果为1时则跳转

33、子程序调用(CALL)FNC01 逻辑处理结果为1时则调用、

34、子程序返回(SRET)FNC02 子条件结束,无条件返回主程序

35、中断返回(IRET)FNC03 中断程序结束,无条件返回主程序

36、中断许可(EI)FNC04 输入中断,定时中断、计数中断允许

37、主程序结束(FEND)FNC06 主程序结束

38、循环开始(FOR)循环开始重复执行动作开始与重复次数定义

39、中断禁止(DI)FNC05 输入中断,定时中断、计数中断禁止

40、循环结束(NEXT)FNC09 重复动作结束

41、相等判别(LD=)FNC224 S1=S2则结果寄存器输出为1

42、大于判别(LD>)FNC225 S1>S2则结果寄存器输出为1

43、小于判别(LD<)FNC226 S1

44、不等于判别(LD<>)FNC228 S1≠S2则结果寄存器输出为1

45、小于等于判别(LD<=)FNC229 S1≤S2则结果寄存器输出为1

46、大于等于判别(LD>=)FNC230 S1≥S2则结果寄存器输出为1

47、相等“与”(AND=)FNC232 S1=S2则判别结果进行“与”运算

48、大于“与”(AND>)FNC233 S1>S2则判别结果进行“与”运算

49、小于“与”(AND<) FNC234 S1

50、不等于“与”(AND<>)FNC236 S1≠S2则判别结果进行“与”运算

51、大于等于“与”(AND>=)FNC238 S1≧S2则判别结果进行“与”运算

52、小于等于“与”(AND<=)FNC237 S1≦S2则判别结果进行“与”运算

53、相等“或”(OR=) FNC240 S1=S2则判别结果进行“或”运算

54、不相等“或”(OR<>)FNC244 S1≠S2则判别结果进行“或”运算

55、大于等于“或”(OR>=)FNC246 S1≧S2则判别结果进行“或”运算

56、小于等于“或”(OR<=)FNC245 S1≦S2则判别结果进行“或”运算

57、大于“或”(OR>)FNC241 S1>S2则判别结果进行“或”运算

58、小于“或”(OR<)FNC242 S1

59、数据比较指令CMP FNC10

进行数据比较功能,基准数据为单一数据,一次性生成大于、小于、等于等比较结果

注释:1)、C1<10, M0=1,Y0=1;

2)、C1=10,M1=1,Y1=1;

3)、C1>10,M2=1,Y2=1。

60、区间比较指令ZCP FNC11

进行数据比较功能,基准数据为数据区间,一次性生成大于、小于、等于等比较结果

注释:1)、C1<10, M0=1,Y0=1;

2)、C1=10,M1=1,Y1=1;

3)、C1>10,M2=1,Y2=1。

61、高速比较指令DHSZ FNC55

62、高速计数成批比较指令DHSCT FNC280

63、直接传送指令MOV FNC12

64、复合传送SMOV FNC13

在数据传送的同时进行转换与唯一等处理,用于特殊数据的传送与转换

65、求反传送CML FNC14 在传送时将指定为求反

66、块传送指令BMOV FNC15

注释:可将长度为n的源数据由【S.】传送到目标数据区域【D.】,其中n指定要传送的数据长度,允许范围为1—512

1)、传送数据长度n的单位与所传送的数据类型有关。

2)、源数据与目标数据的地址范围可以重叠,PLC能自动调整传送顺序,以防数据在传送过程中被覆盖。

3)、扩展应用:可以通过对特殊辅助继电器M8024置1使BMOV实现数据的反向传送。67、多点传送指令FMOV FNC16

可以将个源数据写到操作数n指定的连续多个目标位置中。

注释:当X005=1时,K1被同时送到D0—D4中,若FMOV指令所指定的目标数据范围过大(编程已超出了PLC允许范围)则数据仅传送到PLC允许范围内。

68、二进制位元件传送指令PRUN(FNC81)

注释:1)、可将PLC输入X/输出Y等二进制位元件以字节为单位传送到辅助继电器M或Y 上,传送时可自动调整二进制位元件的起始位。即以十进制格式进位的辅助继电器M上的M**8、M**9的内容不进行处理。

2)、若X006=1,则二进制输入X0-X7、X20-X27将分别被传送到M0-M7、M10-M17中去,M8/M9与M18/M19中的内容被保留。

69、二进制浮点数传送指令DEMOV (FNC112)只能用于FX3U系列

70、高速计数传送指令(DHCMOV)FNC189只能用于FX3U系列

注释:【S.】只能是高速计数器C235—C255或PLC内部环形计数器D8099、D8398 【D.】只能为数据寄存器

【n】只能为K0或K1,计数器与当前值的处理设定。K0保留计数器当前值,K1清除计数器当前值。

71、注释读出指令COMRD (FNC182) 只能用于FX3U系列PLC

注释:1)、可将程序中的编程元件注释所对应的ASCII码读入到指定的区域。

2)、注释的最大长度是16位,可以通过殊辅助继电器M8091的设定对多余进行处理。如:M8091=1,则多余区域内容保留。

M8091=0,则多余内容为0.

72、数据交换XCH(FNC17)交换数据内容或高低字节互换

73、BCD转换BCD(FNC18)二进制转换成BCD

74、BIN转换BIN(FNC19)BCD转换成二进制

75、循环右移ROR(FNC30)指定位数据循环右移

76、循环左移ROL(FNC31)指定位数据循环左移

77、带进位的循环右移RCR(FNC32)指定位数据带进位的循环右移

78、带进位的循环左移RCL(FNC33)指定位数据带进位的循环左移

79、二进制位右移SFTR(FNC34) 数据右移指定位

80、二进制位左移SFRL(FNC35) 数据左移指定位

81、字右移WSFR(FNC36)数据右移指定字

82、字左移WSFL(FNC37)数据左移指定字

83、移位写入SFWR(FNC38)将数据一次写入到连续的存储单元上

84、先进先出移位读出SFRD(FNC39)按SFWR指令的写入次序,先进先出

85、上下字节交换SWAP(FNC147)将指定数据的上下字节进行交换

86、后进先出移位读出POP(FNC212)按SFWR指令的写入次序,后进先出

87、含进位的任意位右移SFR(FNC213)将指定位的状态右移n位(含进位位)

88、含进位位的任意位左移SFL(FNC214)将指定位的状态左移(含进位位)

89、二进制移位指令(SFTR、SFTL)

注释:1)、可将指定位的数据向右或者向左移动指定位((K4),被移出的空位由操作数X000(X001)的内容补入,移右或移左的数据将被抛弃。

90、字位移指令WSFR/WSFL

可将指定长度(K16/K12指定)的数据向右或向左移动若干位(K4/K3指定),被移出的空位由操作数(D0/D3)的内容补入,移走的数据将被抛弃。

91、移位写入/读出指令SFWR/SFRD(一般采用边沿型)

注释:1)、可将指定的源数据(D0)一次写入到目标操作数【D1】指定的连续多个存储单元中。

2)、SFRD可将指定的连续多个源数据(D1)一次读出到目标操作数【D1】指定的存储单元中。

3)、两指令的执行还可以进行写入数据与读出数据的计数,其适用于诸如仓库管理等场合。

4)、当X000/X001=1时,D0写入到D2,,数器D1的内容加1,当D0的数据变更后,再次X000/X001=1时,则将D0的内容写入到D3中,D1的内容再次加1,当计数器D1的内容达到n-1时,进位标志位M8022成为1,数据写入操作不再进行。

92,、先进先出的移位读出指令SFRD (一般采用边沿型指令)

注释:1)、可将指定存储区的数据依次读出。

2)、当X000=1时,可将数据寄存器D2的内容移动到D10,D3-D5的内容依次前移到D2-D4,同时读出计数器D1的内容减1(执行指令前应在D1中写入读出次数),若X0再一次置1,再次将D2的内容传送到D10,D3-D4的内容再次前移到D2-D3,D1的内容继续减1,依次类推,当D1减到0时,0标志M8020=1,数据读出操作不再进行。

93、后进先出的移位读出指令(POP)

注释:X000=1时,则D5内容移动到D10(D2-D5)内容保持不变,读出计数器D1内容减1,然后依此类推,当计数器D1减到0时,0标志位M8020=1时,数据读出操作不再进行。

94)、含进位的左/右移动指令右移(SFR)左移(SFL)

注释:可将指定存储器的16位状态向右或者向左移动若干位(由K6指定),被移出的空位内容补0,移走的数据被抛弃。

二进制运算指令

1)、二进制数加法运算BIN加法ADD(FNC20)

2)、二进制数减法运算BIN减法SUB(FNC21)

3)、二进制数乘法运算BIN乘法MUL(FNC22)

4)、二进制数除法运算BIN除法DIV(FNC23)

5)、二进制数加1运算BIN加1 INC(FNC24)

6)、二进制数减1运算BIN减1 DEC(FNC25)

7)、逻辑字与运算逻辑字与WAND(FNC26)

8)、逻辑字或运算逻辑字或WOR(FNC27)

9)、逻辑字异或运算逻辑字异或WXOR(FNC28)

10)、求补运算求补NEG(FNC29)

11)、求平均值运算求平均值MEAN(FNC45)

12)、BIN开方运算BIN开方SQR(FNC48)

四则运算指令:(ADD、SUB、MUL、DIV)

注释:1)、一般使用边沿型指令;

2)、数据范围,16位位-2的15次方到2的15次方减1,32位位-2的31次方到2的31次方减1;

3)、结果标记:若运算结果为0,则特殊辅助继电器M8020(0标记)置1。结果小于最小值,特殊辅助继电器M8021置1,结果大于最大值,则特殊辅助继电器M8022(进位标记位置)置1。

加/减1指令:(INC/DEC)

注释:1)、一般适用边沿指令;

2)、当加1、减1指令上网运算结果等于下限值时,若再减1则将自动成为最大值,若运算结果等于上限值时,则再加1自动成为最小值。

求补指令(NEG)

注释:可以对指定操作数进行逐位的取反后加1运算,运行结果保留在原操作数中。

求平均值指令(MEAN)

注释:求以D0为首地址的K5(指定数据个数,其允许范围为1—64)个数的平均值,然后存入D1中。

求平方根指令(SQR)

注释:D0中存放求平方根的数据,D2中存放求完平方运算后的结果。当运算结果为0时,M8020置1,当余数被舍去时,借位标记辅助继电器M8021置1。

浮点数转换与运算指令

1)、二进制整数转换成浮点数FLT(FNC49)

2)、浮点数比较指令ECMP(FNC110)功能同CMP

3)、浮点数区间比较指令EZCP(FNC111)

4)、二进制浮点数转换成十进制浮点数EBCD(FNC118)

5)、十进制浮点数转换成二进制浮点数EBIN(FNC119)

6)、浮点数加法运算EADD(FNC120)

7)、浮点数减法运算ESUB(FNC121)

8)、浮点数乘法运算EMUL(FNC122)

9)、浮点数除法运算EDIV(FNC123)

10)、浮点数指数运算EXP(FNC124)

11)、浮点数自然对数运算LOGE(FNC125)

12)、浮点数常用对数运算LOGE10(FNC126)

13)、浮点数开方ESQR(FNC129)

14)、浮点数取反ENEG(FNC130)

15)、浮点数转换成整数INT(FNC131)

16)、浮点数正弦运算SIN(FNC132)

17)、浮点数的余弦运算COS(FNC133)

18)、浮点数的正切运算TAN(FNC134)

19)、浮点数的反正弦运算ASIN(FNC135)

20)、浮点数的反余弦运算ACOS(FNC136)

21)、浮点数的反正切运算ATAN(FNC137)

22)、浮点数转换成弧度运算RAD(FNC138)

23)、浮点数转换成角度DEG(FNC139)

浮点数转换指令

二进制数到浮点数的转换FLT(FNC49)

浮点数到二进制的转换INT(FNC129)

二进制浮点数到十进制浮点数转换DEBCD(FNC118)

十进制浮点数到二进制浮点数的转换DEBIN(FNC119)

三角函数运算指令

正弦(反正弦)DSIN

余弦(反余弦)DCOS

正切DTAN

FX3U系列新增功能指令:RAD、DEG、ASIN、ACOS、ATAN。

注释:对源操作数中的二进制浮点进行三角函数的运算,然后运行结果存储到指定的目的寄存器当中。

指数运算指令DEXP

注释:对源数据中存储的二进制浮点数n进行e的n次方运算,结果存储到目的操作数当中。

对数浮点数指令DLOGE、DLOGE10

注释:执行DLOGE可以对源操作数中存储的二进制浮点数N进行㏑N的运算,结果写入到目的操作数指定的寄存器当中。

数据表操作指令

数据查找SER(FNC61) 进行相同数据与最大/最小数据检索

数据排列SQRT(FNC69) 按照升序重新排列数据表

数据排列SQRT2(FNC149) 数据排列(按升降序重排)

数据表中的数据删除FDEL(FNC210)数据表中的数据删除(指定位)

数据表中的数据插入FINS(FNC211) 数据插入到数据表中的指定位置

1、数据查找SER

注释:1)、可对连续256字的数据进行相同数据与最大/最小数据检索。

2)、K10表示数据长度,允许范围1-256(16位指令)或1-128(32位指令)。指令完成后:数据查找结果寄存器的内容如下:

【D.】(D10):表格中与需要查找的数据相同的数据个数;

【D.】+1:第一个相同在数据表中的序号(数据表首字上网序号为0,以下相同)

【D.】+2:最后一个相同在数据表中的序号;

【D.】+3:数据表中的最小数据在数据表中的序号,如存在多个,则指示最后一个最小数据的序号;

【D.】+4:数据表中的最大数据在数据表中的序号,如存在多个,则表示最后一个最大数据的序号。

2、数据升序排列指令SORT

注释:1)、可对最多32行乘16列的连续数据,按列进行数据从小到大的排列(升序)。

2)、【S.】(D100):只能为数据寄存器D,指定源数据表的存储器起始地址。

3)、【m1】(K5):只能为常数K/H,指定数据表的行数

4)、【m2】(K4):只能为数据寄存器,指定数据表的列数。

5)、【D.】(D200):只能为数据寄存器,指定排序完成后的新数据表存储器起始地址。

6)、n(D0):常数K/H,数据寄存器D,指定需要进行排序的列,允许范围为:1—m2。

3、数据的升序/降序排列(DSQRT2)

注释:指令编程格式与SQRT一样,只是通过特殊辅助继电器M8165置1来实现降序排列。

4、指定位置数据的删除指令(FDEL)

注释:1)、可删除(移出)指定位置的数据,并且这一数据移动到指定的存储单元。

2)、不允许超过32位操作数。

5、数据插入指令(FINS)

注释:1)、可在数据表的指定位置上插入一数据。

2)、【S.】(D100):指定需要插入的数据。

3)、【D.】(D200):指定数据表的存储器起始地址,数据表存储器的第一字节应为数据表长度。

4)、n(K2):指定数据表中的数据插入位置。

5)、不允许32位操作数。

6、PLC控制与时钟处理指令(能够直接控制或是影响PLC操作系统处理的指令)

1)、监控定时刷新WDT(FNC07) 清除PLC循环时间,监控定时器的计时值2)、I/O刷新REF(FNC50)不受PLC周期约束,直接控制PLC I/O口3)、输入滤波时间设定REFF(FNC51) 直接设定特殊输入特殊输入滤波时间

4)、PLC时钟设定TWR(FNC167) 改变PLC内部时钟

1、监控定时器刷新指令

循环时间监控功能(看门狗),若PLC在规定时间无法完成全部程序的扫描,则将发生“定时器监控报警”,在FX系列PLC上,其出厂设定值为200MS。

注释:1)、执行WDT指令,可清除监控计时器已有值,重新设定。

2)、也可以修改M8000的值实现,如:MOV K500 M8000,则可以直接将PLC循环监控时间设定为300ms。

2、I/O刷新时间(REF)

注释:1)、不受PLC扫描周期的影响,直接控制信号的输入/输出

2)、【D.】(X010)只能为X/Y ,n为K/H,范围8—256且必须为8的倍数,I/O刷新以字节为单位进行,故起始地址的个数必须为0(不能定义为X21/Y15等)

3、输入滤波时间设定指令(REFF)

注释:1)、消除信号的抖动与干扰,PLC的输入回路都安装有RC滤波器或者是数字滤波器,

其中数字滤波器的滤波时间可通过程序指令来调整。

2)、指令的操作对象固定为X0—X17,滤波时间n(K8)以常数K/H的形式设定(ms),其值保存在D8020中。

4、时钟设定指令(TWR)

注释:【S.】(D10):所定义的是时钟数据存储器的首地址,修改PLC时钟需要连续7个字数据,执行TWR可一次性将时钟数据写入到PLC内部时钟特殊数据寄存器D8013—D8019中。指令写入数据(7字)

【S.】+0:代表操作数的第一个字

【S.】+0:年(写入D8018)公历年的后2位00—99

【S.】+1:月(写入D8017)允许01—12

【S.】+2:日(写入D8016)允许01—31

【S.】+3:时(写入D8015)允许00—23

【S.】+4:分(写入D8014)允许00—59

【S.】+5:秒(写入D8013)允许00—59

【S.】+6:星期(写入D8019)允许0-6(0对应是星期天)

5、时钟的其他设定与指令

可以利用MOV指令,通过修改D8013—D8019的内容来设定PLC的时钟,但只有通过M8015的下降沿,才能写入新的时钟并启动时钟。M8017用于正负30s的时间校正,若M8017=1,可将现行0—29s的秒计时直接复位至0,而将30—59的秒计时进位到60S。

注释:若年份需要4位数显示则(只需在PLC的第一个循环周期内有效)

时钟处理指令:

1)、时钟比较TCMP(FNC160)比较时钟数据,产生比较结果信号

2)、时钟区间比较TZCP(FNC161)以区间形式比较时钟数据,产生比较结果的信号3)、时钟数据加运算TADD(FNC162)按照时钟数据的进位规则,

4)、时钟数据的减法算运算TSUB(FNC163) 进行数据的加减法运

5)、时钟数据换算HTOS(FNC164)将时、分、秒换算到秒

6)、时钟数据的换算STOH(FNC165)将秒换算到时、分、秒

7)、读取时钟数据TRD(FNC166)读出当前PLC的时钟数据

8)、小时定时HOUR(FNC169) 进行小时为单位的定时

1、时钟比较指令(TCMP)

注释:【S1.】(K10):参考时间的“时”。

【S2.】(K20):参考时间的“分”。

【S3.】(K50):参考时间的“秒”。

【S.】(D0):存储用于比较的时间。

【D.】(M0):存储比较结果值,占连续3位。

若大于参考值则M0=1

若等于参考值则M1=1

若小于参考值则M2=1

2、时钟区间比较指令(TZCP)

注释:1)、【S1.】(D20):参考时间的“时”。

【S2.】(D30):参考时间的“分”、“秒”。

【S.】(D0):存储用于比较的时间。

【D.】(M0):存储比较结果值,占连续3位。

2)、若D0/D1/D2

若D20/D21/D22下限≦D0/D1/D2≤D20/D21/D22上限,则M1=1。

若D20/D21/D22下限<D0/D1/D2,则M2=1。

3、时钟数据的加减法运算指令(TADD/TSUB)

注释:【S1.】(D10):被加数/被减数

【S2.】(D20):加数/减数

【D.】(D30):结果寄存器

进位标志位:M8022 借位标志位:M8021

4、时钟数据换算指令HTOS/STOH

4、时钟数据读出指令TRD

注释:以操作数【D.】(D10)为首地址的连续7个字节数据寄存器中,读出年、月、日、时、分、秒、星期。

5、小时定时指令HOUR

简化编程指令:

1、区间复位指令ZRST

可对指定区间信号状态或数据进行一次性清0,常用于PLC的初始化操作。

注释:1)、ZRST既可用于二进制位元件的清除,也可以用于定时器、计数器、数据寄

存器的字型数据的清除。对于前者功能相当于RST,对于后者相当于FMOV K0.

2)、指令中【D1.】(M500)与【D2.】(M599)的编程类型一致,并保证【D2.】的地址编号大于【D1.】。

3)、用于字清除时,【D1.】、【D2.】字长必须一致。

2、译码指令DECO

可将二进制(或BCD)编码形式的信号或数据转换为连续排列的二进制状态位信号。

注释:1)、n(K13):常数K/H,指定二进制编码信号的位数,范围1—8(二进制位元件)或1—4(字元件)

2)、DECO既可用于二进制位编程元件的译码、也可用于定时器、计数器、数据寄存器等的字型数据译码。

3、编码指令ENCO

译码指令的逆变换,可将连续的二进制位状态转换为二进制(或BCD)编码信号。

注释:1)、【S.】(M10/D0):用来指定需要进行编码的二进制位元件的首地址。

2)、n(K3):指定编码的位数与需要进行编码的二进制位元件数量。

3)、进行二进制位编程元件的编码时最大的编码位数为N=8,最多可进行256个连续二进制位信号的一次性编码。

4)、需要进行编码的源数据有唯一的1位信号的状态位“1”,当源数据的所有位均为0时,执行指令将出错。

5)、编码位数n应正确设定,若n=0时,指令将不执行。

4、ON位统计指令(SUM)

用于指定区域状态为1的位数统计,统计后的结果以二进制的形式存储于指定的单元。

注释:需要统计的区域由操作数【S.】指定,统计结果存储在操作数【D.】中。如果被统计的操作数上无“1”信号,则特殊辅助继电器M8020(0标记)置“1”。

5、ON位检测指令(BON)

用于指定二进制位的1信号判断,该位为1,则结果寄存器的状态为1,否则为0.

注释:需要检测的区域由操作数【S.】(D0)指定,检测位的bit号由n定义,检测结果存储在指定的位编程元件中。

6、位置ON延时报警(ANS)

可通过对输入控制信号为“1”的状态进行定时监控,并在PLC上产生报警。每一ANS指令需要占用一只100MS的定时器。

【S.]源数据(T0):定时器,T0—T199;

【D.]目标数据寄存器(S900):PLC报警状态继电器S900—S999。

m(K10):常数K/H,范围1—32767(单位0.1s)

注释:1)、若X000接通到达1s,则用于产生PLC报警的状态继电器S900置1,PLC产生报警,此后X000为0,S900仍保持1(需要通过后述的报警复位清除),但定时器将被复位。

2)、PLC可通过特殊辅助继电器M8048/M8049检测,若M8049=1,PLC报警状态继电器Sxxx将被同时存储到特殊数据寄存器D8049上。当出现多个报警器时,D8048只存储最小的报警状态继电器号。

7、报警复位指令ANR(多用上升沿指令)

用于PLC报警状态继电器复位。

注释:无须操作数,它在控制输入为1时,对报警状态继电器S900—S999进行逐一复位,当PLC出现多个报警时,每次依次对从小到大的报警状态继电器执行复位。

8、交替输出指令ALT(多用上升沿)

9、PLC循环时钟脉冲生成指令(DUTY)

注释:1)、n1(K5)、n2(K4):常数K/H,定时器T,计数器C,数据寄存器D,分别指定输出脉冲ON和OFF区域的宽度,(以PLC循环周期为单位)。

2)、【D.】(M8330):只能是特殊辅助继电器M8330)—M8334,指定PLC循环时钟脉冲信号的输出地址。(记忆每一输出脉冲周期的PLC循环次数)。

3)、DUTY指令在PLC程序中最多可以使用5次。

数据块操作指令

1)、数据块的字节求和(CCD)

以字节为单位进行求和处理。

【S.】(D100):指定数据表的存储器起始地址

【D.】(D0):指定求和结果数据存储器地址

【N】(K10):指定数据长度(字节数)1—256

注释:执行指令可对由操作数【S.】指定的地址开始的n个数据以字节为单位进行求和,若起始地址指定为数据寄存器D,则上下字节作为2个不同操作数处理,结果写入到操作数【D.】指定的存储器中。

2)、数据块的字或双字求和指令

【S.】(D100):数据寄存器的起始地址;

【D.】(D0):指定求和结果数据寄存器地址;

n:不能超过存储器范围指定求和个数。

3)、数据块的加/减运算(BK+/BK-)

【S1.】(D100):指定存储器被加数或被减数的数据存储器的起始地址。

【S2.】(D150):指定存储加数或件数的数据存储器的起始地址。

【D.】(D0):指定运算结果数据的存储器起始地址。

n(K4):指定数据块长度,不能超过存储器允许范围。

4)、数据块的分离指令(WTOB/DIS)

【D.】(D0):指定分离结果数据块存储器的起始地址。

n(K10):指定数据块的长度,WTOB指令不能超过存储器允许范围,DIS指令允许范围1—4。

5)、数据块组合指令BTOW、UNT

6)、数据块比较指令

【S1.】(D100):指定比较数据或比较数据块的存储器起始地址。

【S2.】(D200):指定基准数据块的存储器起始地址。

【D.】(M10):指定比较结果输出的存储器起始地址

n(K10):指定数据长度。

扩展文件寄存器操作指令

1)、扩展文件的装载指令LOADERP(FNC290)

可将保存在PLC存储器盒中的扩展文件寄存器ER的内容一次性读入到PLC的扩展数据寄存器R区域。

【n】(K400):需要装载的数据长度,1—32767。

2)、扩展文件寄存器的保存指令SAVERP (FNC291)

将PLC的扩展数据寄存器R区域的内容分批保存到PLC存储器盒中。

PLC特殊功能

1)、操作面板与显示功能

1、矩阵扫描(MTR)

【S.】(X020):只能是输入X,定义行输入的起始地址(占连续8点输入)。

【D1.】(Y020):只能是输出Y,定义列输出的起始地址。

【D2.】(M30):二进制位元件Y/M/S,定义转换后的输入信号存储器起始地址。

n:常数定义数列允许范围2—8。

注释:1)、不允许32位操作令与边沿指令。

2)、一条MTR指令最多可8x8处理输入点数

3)、信号转换须8xn个二进制单元存储输入状态,存储区域的起始地址由操作数【D2.】指定。

矩阵扫描处理:

在PLC矩阵扫描完成之后,M8009置1,保持到M0=0时才断开。

注:1)、在使用MTR时,按键信号的状态保持必须大于最大扫描时间

2)、在输入连接上所有输入键都必须加隔离二极管。

2、数字键与编码开关输入控制(TKY)

可以一次性完成10个10进制数字键的转换。

【S.】(X000):二进制位元件,定义输入键的起始地址,占用连续10个点。

【D1.】(D0):复核操作数,定义数据转换信号的存储器地址。

【D2.】(M10):二进制位元件存储输入信号状态的位元件起始地址,占用连续11点。

3、16进制数字键输入指令(HKY)

HKY的内部处理常用矩阵扫描处理方式。

相关主题
相关文档
最新文档