三菱FX系列PLC的基本顺控指令说明12

三菱FX系列PLC的基本顺控指令说明12
三菱FX系列PLC的基本顺控指令说明12

三菱FX系列PLC的基本顺控指令说明(一)

触点类指令用来表示事件发生(输出)的条件。触点在梯形图中与其他触点及其他梯形图符号的相互关联是组成梯形图的最主要内容,再用通俗语言简要介绍PLC的扫描周期。示例图:

上图是一个简单的顺序控制,顺序控制则为顺序执行,其执行顺序为:

1、扫描输入点,假设在扫描期间X003,X005为吸合状态。

2、顺序执行程序,执行结果为Y1吸合,此时只是将Y1状态存入映像区并没有实际输出。

3、输出刷新,将Y1的吸合状态才是真正输出。

一、逻辑运算开始触点:LD,LDI,LDP,LDF

LD:逻辑运算开始与左母线连接的动合触点

LDI:逻辑运算开始与左母线连接的动断触点

LDP:逻辑运算开始与左母线连接的上升沿检测

LDF:逻辑运算开始与左母线连接的下降沿检测

二、逻辑运算串联触点:AND,ANDI,ANDP,ANDF

AND:串联连接动合触点

ANI:串联连接动断触点

ANP:串联连接上升沿检测

ANF:串联连接下降沿检测

三、逻辑运算并联触点:OR,ORI,ORP,ORF

ORD:并联连接动合触点

ORI:并联连接动断触点

ORP:并联连接上升沿检测

ORF:并联连接下降沿检测

四、线圈驱动指令:OUT

PLC扫描周期的概念:

我们在观察PLC运行时,感觉只要输入点变化了,其控制的输出点马上变化,那是因为PLC的运算速度非常快,如上面的小程序,扫描周期不到一毫秒。如果我们假设扫描周期非常长,那么结果就如下所述:

1、在顺序执行程序期间,输入点X000,X004吸合并不能改变Y000的状态,因为PLC 需要在下次扫描输入点时才获得X000,X004的状态。假如PLC的扫描时间为一个小时,而输入点X000,X004的吸合状态只保持了半小时,进入下一次扫描输入点阶段时,X000,

X004已经断开,则它们俩的吸合也就做了无用功。

2、假设扫描周期为半小时的话,当程序执行完第7步,Y1吸合。但是要等到半小时后,到达输出刷新阶段,Y1才能真正输出去控制PLC的外部电元件。

三菱FX系列PLC的基本顺控指令说明(二)

上升沿检出指令PLS及下降沿检出指令PLF用于检出信号的变化成分。当能流到达PLS指令时,PLS指令操作数所对应的存储单元接通一个扫描周期。当能流失去时,PLF指令使它的操作数对应的存储单元接通一个扫描周期。再说说双线圈错误的理解。

示例图:

上图所示

1、如果在第一次扫描开始时,执行到第0步M0是断开状态,而第二次扫描到第0步时M0为闭合状态,则PLC检测到一个上升沿,Y0则闭合.但是不管M0能够接通多长时间,Y0也只接通两毫秒的时间(这里假设PLC程序的扫描周期为两毫秒)。也就是说,当PLC第三次扫描到第0步时,虽然M0还是闭合状态,但是Y0还是断开了。

2、程序执行到第3步时,PLC检测到Y0的闭合,于是能流到达SET指令,运用SET 指令,Y1置1。当第二次扫描到第3步时,尽管Y0已经断开(如第一点所述),Y1继续保持接通状态。

3、如果在第一次扫描开始时,执行到第5步M0是闭合状态,而第二次扫描到第5步时M0为断开状态,则PLC检测到一个下降沿,Y2则闭合.Y2也是只接通两毫秒的时间(这里还是假设PLC程序的扫描周期为两毫秒)。也就是说,当PLC第三次扫描到第5步时,但是Y2断开了。

4、程序执行到第8步时,PLC检测到Y2的闭合,于是能流到达RST指令,运用RST 指令,Y1置0进入断开状态。如果未检测到Y2闭合,当Y1继续保持原有状态。这即是RST与OUT指令的区别所在!

SET:线圈接通保持指令

RST:线圈接通清除指令

SET指令及RST指令这置位、复位指令,它们的作用时,当能流到达SET时,该指令操作数对应的存储单元置1,能流消失时,该存储单元保持置1。必须有能流到达复位该存储单元的复位指令时,才复位置0。

PLS:上升沿微分输出指令

PLF:下降沿微分输出指令

上升沿检出指令PLS及下降沿检出指令PLF用于检出信号的变化成分。当能流到达PLS 指令时,PLS指令操作数所对应的存储单元接通一个扫描周期。当能流失去时,PLF指令使它的操作数对应的存储单元接通一个扫描周期。

双线圈错误:

上图中两次出现Y1,虽然在程序错误检测时提示违反双线圈错误,却可以正常运行,也就是说这是一个正常的程序。但是如果把SET Y1与RST Y1都换成OUT Y1,则就是一个标准的双线圈错误。

理解此错误,还得再提PLC程序的扫描周期概念,(把SET Y1与RST Y1都换成OUT Y1)如果Y2永远是断开状态,那么尽管执行到第3步令Y1闭合,但是由于PLC尚未进入输出刷新阶段,所以Y1并没有形成真正的输出,而执行到8步时,由于Y2的断开状态,又令Y1线圈断开。所以当进入输出刷新状态时,Y1是以断开状态输出。也就是说第3步的程序是失效没用的!

三菱FX系列PLC的基本顺控指令说明(三)

主控指令含主控触点指令(MC)及主控触点复位指令(MCR),客观存在们的功能与栈指令有许多相似之处,都是一个触点实现对一片梯形图区域的控制。一句话介绍一下运算结果反转指令INV,再说说FX系列PLC的相关软件(编程软件与学习软件)

上图中M100为主控触点,该触点是“能流”到达触点后梯形图区域的“关卡”。因而称为“主控”。也就是说,当X000接通时,将执行从MC到MCR之间的指令。MC、MCR 指令需要成对使用,MC指令建立新母线,MCR指令则回复到原母线。MC指令可以嵌套8层。MC指令中的“N0”为主控触点的嵌套编号(0---7)。当不嵌大庆时,编号都可以使用N0,N0有使用次数没有限制。

运算结果反转指令:INV

INV指令是将INV指令执行前的运算结果取反的指令,上图中当X0断开时,Y0吸合

FX系列PLC的编程电缆型号:SC-09

FX系列PLC的相关软件(编程环境):

1、FX系列PLC的专用版编程软件:FX-PCS/WIN-C

中文软件,适用于FX1S,FX1N,FX2N,FX1NC,FX2NC,FX0,FX0S,FX0N,FX1,FX2,FX2C。很多网页提供免费下载,百度搜索很容易找到.

2、三菱全系列PLC编程软件:GX-Developer(型号:SW7D5C-GPPW)

中文软件,适用三菱PLC FX/A/QNA/Q系列。软件很大,所以现在提供免费下载的不多,可以在购买PLC时向供应商索取,供应商非常乐意提供此软件。

3、FX系列PLC的学习软件:FX-TRN-BEG,FX-TRN-DA TA中文软件,可进行程序模拟。

FX-TRN-BEG:基本命令学习软件(ON/OFF控制,计数器控制,定时控制)网上可找到免费下载。

FX-TRN-DA TA:应用指令学习软件(四则运算,数值/数据处理),

三菱FX系列PLC的基本顺控指令说明(四)定时器

FX系列PLC定时器均为接通延时定时器,即当定时器的线圈得电时,定时器开始计时,定时器计时时间到达设定值时,定时的动合触点接通,动断触点断开。再谈谈NOP指令。

FX系列PLC定时器分为累计型与非累计型两种,如上图所示

为非累计型定时器,当M0闭合后,T0开始计时,如果M0闭合时间能保持10秒以上,则T0计时到10秒时,T0的动合触点吸合,Y0,Y1得电,M0断开,则T0复位。如果在10秒内MO断开,则T0的计时清零,M0再得电重新开始计时。

如果为累计型定时器(假设T0为累计型,实际请看下面的注解),当M0闭合后,T0开始计时,如果M0闭合时间能保持10秒以上,则T0计时到10秒时,T0的动合触点吸合,Y0,Y1得电,M0断开,则T0复位。如果在5秒时MO断开,则T0的计时保持,M0再得电重新开始计时,再计时5秒,T0的动合触点闭合。

注解:定时器的地址不一样,其计时的单位与也不同,以FX2N为例:

T0---T199为100毫秒计时一次。设定值为100,则是10秒。(非累计型)

T200---T245为10毫秒计时一次。设定值为100,则是1秒。(非累计型)

T246---T249为1毫秒计时一次。设定值为100,则是0.1秒。(累计型)

FX系列PLC定时器的精度:

在定时器线圈得电后,定时器开始计时,在计时完了后的最初的线圈执行时,输出触点动作。

此段文字意思为:假如第八次扫描到第3步OUT T0 K100时,计时到达10秒。此时T0并不吸合,第九次扫描到第3步OUT T0 K100时,T0才吸合。第6步的T0才闭合,Y0得电输出。而第十次扫描到第0步时,Y1也会得电输出。

所以扫描周期越长,定时器的误差越大,而定时器的触点放在定时器线圈指令的上方明显比放在定时器线圈指令的下方误差要大。

如果定时器的设定值为0,则是在扫描到定时器线圈指令后的下一次扫描到定时器线圈指令后吸合。

NOP指令的作用?

答:PLC无视NOP指令,其不会产生执行时间,所以没用!NOP指令在用手持编码器输入程序时代还有点用处,用于减少程序步号的变化(那时没有编程软件,检查程序执行结果,主要是靠在PLC上查找程序步号,步号变了,就需要重新改写字张或是文档上的程序步号).

三菱FX系列PLC的基本顺控指令说明(五)计时器

当FX系列PLC的十六位计数器到达设定值后触点闭合,其计数值不再变化。而三十二位计数器到达设定值后,计数值继续变化。再谈谈END指令的作用。

FX系列PLC的计数器分为停电保持型计数器与一般计数器两种。PLC断电,则一般计数器的计数值被清零,而停电保持计数器则可以保持停电前的计数值,PLC上电后,在原有值的基础上继续计数。

FX系列PLC的计数器编程方法如上图所示

X1由OFF--ON变化时,C20计数一次。当计数值到达20时,C20闭合,Y0得电输出。在C20计数期间或是C20计数到达吸合期间。X0得电,则C20复位,其动合触点断开,Y0失电。

上面所讲是针对十六位计数器,三十二位计数器的工作状态又有所不同,其工作状态读者可参考编程手册。(许多网站免费提供FX系列PLC编程手册下载)

需要注意的是:FX系列PLC的计数器是对PLC的X,Y,M等触点的动作进行循环扫描并计数,所以触点的断开和接通的持续时间必须比PLC的扫描周期时间长。如X1触点在PLC运行程序期间(没有执行到输入扫描阶段)有一次OFF--ON的变化,而ON状态并没有保持到PLC进入输入刷新阶段,也就是说PLC并没有接收到X1的此次状态变化,那么C20就丢失了一次计数。

END的作用:

1、PLC不执行END指令以后的程序,所以可在任意地方插入用END指令来分阶段调试程序。

2、执行END指令时,PLC刷新监视定时器的数值

3、执行到END指令后,PLC开始进行通讯处理,也就是说您用触摸屏或是其他上位机对PLC的字元件或是位元件进行操作时,其数值或是状态的变化只要执行到END指令时,PLC才能接收到!

中断程序实例---三菱FX系列PLC应用指令

中断很好理解,就是中断当前正在执行的指令,执行要求快速反应的一段程序!本节以三菱FX系列PLC输入中断为例,简单介绍一下中断的应用。再谈谈主程序结束指令FEND

1、中断返回指令:IRET

2、禁止中断指令:DI

3、允许中断指令:EI

4、主程序结束指令:FEND

PLC平时是处于中断禁止状态,所以要想应用中断功能,则必须EI指令允许中断。

中断用指针必须在主程序结束指令FEND指令后作为标记编程,什么是中断指针呢?编程时可能会用到两个以上的中断,某一个中断信号到来执行那一段中断程序就需要用中断指针来明确。

三菱FX系列PLC可以允许六个输入中断,它是采用X0---X5的输入信号,中断通常的顺控程序,优先执行中断例行程序。

如果输入信号依次发生时,以先发生的为优先执行,如果同时到来,则以X0,X1,...X5的顺序优先执行。

虽然中断是采用硬件扫描输入的方式,但也需要执行时间。我们可以把输入采集理解为一个小电容的充放电过程,充放电是需要时间的,如果在充放电未结束时输入信号消失,

那么PLC就采集不到此次的输入信号。

三菱FX系列PLC要求的输入脉宽还是很低的:

FX2N-------X0,X1:20μs以上X2--X5: 50μs以上

FX1S,FX1N--X0,X1:10μs以上X2--X5: 50μs以上

这个要求与S7-200比起来还是不错的,S7-200的最低要求也是200μs

中断脉宽要求越低,PLC响应中断的速度越快,精度越好!当然抗干扰也稍差了。

下图是一个简单的输入中断例子与输入中断指针点的编号

上图是一个X0的上升沿中断,所以中断指针为I1.也就是当XO闭合时,执行指针I1下面的程序.

1、中断程序请用常闭点M8000,不然会受到扫描时间影响

2、中断等程序是在主程序结束指令FEND指令后编写

3、REF是将运算结果立即输出指令,中断程序虽然是快速响应输入信号,但是其运算结果还是要等到FEND指令时才能真正输出,也就是说其运算的结果还会受到程序扫描时间影响,失去了中断的快速意义,所以要用REF指令将运算结果实现立即输出。

监视定时器WDT---三菱FX系列PLC应用指令

在顺控程序中,执行监视用定时器刷新的指令是监视定时器WDT指令

在PLC的运算周期(0--END及FEND指令执行时间)超过200ms时,可编程控制器CPU的出错指示灯点亮同时停止工作,因此在编程过程插入监视定时器WDT指令是有必要的。

通过改写D8000(监视定时器时间)的内容,可改变监视定时器的检出时间。如下:LD M8002

MOV K300 D8000

WDT

将监视定时器时间改写为300ms

监视定时器有可能出错的原因:

1、扩展模拟量等特殊模块时,PLC运行时进行的缓冲存储器初始化时间会延长从而使扫描时间延迟。

2、在执行多条FROM/TO指令,或向多个缓冲存储区传送数据时,扫描时间也会延迟。

条件跳转CJ---三菱FX系列PLC应用指令

应用跳转指令可以缩短PLC的运算周期,应用跳转指令允许双线圈使用,双线圈的允

许令程序更加清晰明了

FX系列PLC的跳转指针规定如下:

FX1S:P0----P63

FX1N,FX2N,FX2NC:P0---P127

*P63是向END跳转专用!并且不用标记P63。如果标记了P63,则PLC显示错误码6507,并停止工作.

求例程序如下:

如果X0闭合,则跳转到P8步执行(只要X0闭合,每个扫描周期都执行跳转)

如果X1闭合,则跳转到P9步执行(因是CJP指令,不管X1闭合多长时间,PLC只执行一次跳转)

程序中出现两次Y1、Y2,这样却不是双线圈现象,所以应用跳转指令都让我们更某个线圈的执行条件更加清晰明了。

比较指令CMP与区域比较指令ZCP---三菱FX系列PLC应用指令

比较指令与区域比较指令有16位指令与32位指令的区分,本节再介绍一下FX系列PLC32位寄存器的地址分配。

比较指令:

CMP:16位连续型比较指令CMPP:16位脉冲型比较指令

DCMP:32位连续型比较指令DCMPP:32位脉冲型比较指令

举例:

LD X000

CMP K100 D100 M0

当X0闭合时:

如果寄存器D100的值小于100时,则M0闭合

如果寄存器D100的值等于100时,则M1闭合

如果寄存器D100的值大于100时,则M2闭合

1、比较指令可以控制例中M0,M1,M2三个位元件的状态。

2、当X0断开时,M0,M1,M2仍保持在X0闭合时的运算结果,如果想清除CMP 比较指令的运算结果则需要用复位指令。

区域比较指令:

ZCP:16位连续型区域比较指令ZCPP:16位脉冲型区域比较指令

DZCP:32位连续型区域比较指令DZCPP:32位脉冲型区域比较指令

举例:

LD X000

ZCP K100 K200 D100 M10

当X0闭合时:

如果寄存器D100的值小于100时,则M10闭合

如果寄存器D100的值大于100,小于200时,则M11闭合

如果寄存器D100的值大于200时,则M12闭合

1、区域比较指令可以控制例中M10,M11,M12三个位元件的状态。

2、当X0断开时,M10,M11,M12仍保持在X0闭合时的运算结果,如果想清除ZCP 区域比较指令的运算结果则需要用复位指令。

FX系列PLC32位寄存器的地址分配:

32位寄存器是占用两个16位寄存器地址,比如说:D0用到32位指令里,则D0,D1这两个寄存器被占用。D0为数据低位,D1为数据高位。

如果23位寄存器D0的值为16,则D1的值为0,D0的值为16

如果23位寄存器D0的值为70000,则D1的值为1,D0的值为4464。

(4464的十六进制值为1170,1十六进制值仍为1。D0,D1组个在一起的十六进制值为11170,十六进制值11170的十进制值为70000)

*不用的PLC,32位寄存器的数据高位与低位分配是不一样的,比如西门子S7-200的32位寄存器则正好与FX系列PLC相反。

传送指令M0V---三菱FX系列PLC应用指令

传送指令MOV可以用来读取计数器、定时器的当前值,也可以用来改变计数器、定时器设定值.再谈谈如何理解MOV K1X0 K1Y1.

传送指令比较简单,如下:

LD X0000

MOV D0 D1

MOV T0 D100

MOV K100 D20

OUT T10 D20

当X0闭合时:

1、将D0的值传送给寄存器D1,寄存器D0的值不变。

2、当定时器T0的当前值传送给寄存器D100

3、设定定时器的延时时间为10秒(因为T20设定值的单位为100毫秒)

运算结果以32位输出的应用指令(MUL等)、32位数值或32位软件元件的高速计数器当前值等数据的传送,必须使用DMOV指令。如:

DMOV C235 D20

因为高速计数器C235为32位软元件。

传送指令MOV有

一种很方便的应用,

如下:

左边的顺控程序

可以用右边的一条指

令MOV K1X0 K1Y1

来实现。

成批传送

BMOV---三菱FX系列PLC应用指令

将以源指定的软元件为开头的n点数据向以目标指定的软件元件为开头的n点软元件成批传送。通俗地讲就是一次传送多个寄存器的值给另一批寄存器。

BMOV:连续执行型成批传送指令

BMOVP:脉冲执行型成批传送指令

BMOV D10 D20 K4

这条指令的执行结果是将:

D10--->D20寄存器D10的值送给寄存器D20

D11--->D21寄存器D11的值送给寄存器D21

D12--->D22寄存器D12的值送给寄存器D22

D13--->D23寄存器D13的值送给寄存器D23

BMOV K1M10 K1Y10 K2

这条指令的执行结果是将M10---M17这八个位元件的状态传送给Y0---Y17。

M10--->Y10

M11--->Y11

M12--->Y12

M13--->Y13

M14--->Y14

M15--->Y15

M16--->Y16

M17--->Y17

触点比较指令---三菱FX系列PLC应用指令

触点比较指令比较简单,用于寄存器,计数器等与某个数值比较。根据比较条件来控制后段的指令。

LD= K200 D20

OUT Y1

当D20的值等于200时,Y1线圈得电。

LD M0

AND> D100 K300

OUT Y2

当M0闭合,且D100的值大于300时,Y2线圈得电。

LD M100

OR<> D30 K100

OUT Y3

当M100闭合或是D30的值不等于100时,Y3线圈得电。

位传送指令SMOV---三菱FX系列PLC应用指令

BCD码是用4位二进制码的组合表示十进制数,如8572的BCD码为:1000,0101,0111,0010

位传送指令SMOV的编程格式:

SMOV D10 K4 K2 D20 K3

*D10:传送源寄存器,可以是T,C,D或是位元件的组合如:K4X0

*K4:源寄存器D10传送的起始位,只能是十进制数或是十六进制数。

*K4:源寄存器D10传送的位数,只能是十进制数或是十六进制数。

*D10:传送目标寄存器

*K4:目标寄存器接收的起始位,只能是十进制数或是十六进制数。

*SMOV指令执行前是先把源寄存器的值转换为BCD码,再按照指令规定的位数转送给目标寄存器,目标寄存器接收后将BCD码转换为十进制

*源寄存器的值在传送后并不改变,目标寄存器没有接收数据的位状态并不改变。

假如:D10的值为200,D20的值为1

执行SMOV D10 K4 K2 D20 K3的结果为:D10的值为200,D20的值为21。

解释如下:

D10的值为200,转换为BCD为:0000 0010 0000 0000

D20的值为1,转换为BCD为:0000 0000 0000 0001

源寄存器D10从第4位开始的2位(0000 0010)传送给目标寄存器D20的第3位开始的2位

目标寄存器D20变为(BCD码):0000 0000 0010 0001,转换为十进制则是21。

如果将M8168置位,则执行SMOV时不转换成BCD码,直接按原位数转换

如D10=2000 D20=1

执行SMOV D10 K4 K2 D20 K3的结果为:D10的值为2000,D20的值为113。

D10=2000的十六进制为07D0 D20=1的十六进制为0001

传送结果D20的十六进制值为0071,其十进制为113。

SMOV指令可以应用在将不连续的输入点状态,组合在一起,方便运算。

加(减)法运算指令ADD(SUB)---三菱FX系列PLC应用指令

ADD,ADDP,SUB,SUBP:16位指令DADD DADDP,DSUB,DSUBP:32位指令加法指令的编程格式如下:

ADD D10 D20 D30

寄存器D10的值与寄存器D20的值相加,运算结果传递给D30.

减法指令的编程格式如下:

SUB D10 D20 D30

寄存器D10的值与寄存器D20的值相减,运算结果传递给D30.

*D10,D20:可以是数值,寄存器,T,C或是位元件的组合如K4X0

ADDP D100 K1 D100

这样的用法也是可以的,运算结果就是每个扫描周期,D0的值都加1

相关标志:

零标志:M8020,加减运算结果为0时闭合,不为0时自动断开

借位标志:M8021,减法运算的结果小于-32768时闭合,大于-32768时自动断开

进体:M8022,加法运算结果发生进位时闭合。运算结果没有进位自动断开.

FX系列PLC的逻辑与W AND,逻辑或WOR,逻辑异或WXOR指令

0与任何数相与结果为0,1与任何数相或结果为1,两个相同的数异或结果为0、两个不相同的数异或结果为1。

WAND,WANDP,WOR,WORP,WXOR,WXORP:16位指令

DAND,DANDP,DOR,DORP,DXOR,DXORP:32位指令(*32位指令没有“W”)

逻辑与,逻辑或,逻辑异或的编程格式如下

W AND D10 D20 D30 (D10和D20相与,运算结果传递给D30)

WOR D10 D20 D30 (D10和D20相或,运算结果传递给D30)

WXOR D10 D20 D30 (D10和D20相异或,运算结果传递给D30)

源寄存器D10,D20:可以为数值,寄存器,T,C或是位元件组合如K4X0

目标寄存器D10,D20:可以为寄存器,T,C或是位元件组合如K4M0,K4Y0(不允许KnX)

实例:

D10=1 0000 0000 0000 0001

D20=101 0000 0000 0110 0101

W AND D10 D20 D30

D30=1 0000 0000 0000 0001

WOR D10 D20 D30

D30=101 0000 0000 0110 0101

WXOR D10 D20 D30

D30=100 0000 0000 0110 0100

求补指令NEG---三菱FX系列PLC应用指令

求补:将各位先取反(0--->1 1--->0),然后再加1。运用这个指令可以得到与负数相对应的绝对值。

NEG,NGEP:16位指令DNEG,DNGEP:32位指令

求补指令编程格式如下:

NEG D10

*D10:可以为寄存器,T,C或是位元件的组合K4Y0,K4M0,K4S0(不允许KnX)

实例:

假设D10为-2 1111 1111 1111 1110

NEG D10

先取反结果为:0000 0000 0000 0001

再加1结果为:0000 0000 0000 0010(D10=2)

*本指令只适用于FX2N,FX2NC。

位右移SFTR与位左移SFTL指令---三菱FX系列PLC应用指令

还是建议用脉冲型指令,除非您的程序要求每次扫描都进行一次右移或是左移。

SFTR,SFTL:连续执行型指令SFTRP,SFTLP:脉冲执行型指令

位右移SFTR与位左移SFTL指令编程方式如下:

SFTRP M0 M20 K16 K4

SFTLP M0 M20 K16 K4

*M0:源位元件起始地址,只能是位元件(X,Y,M,S)

*M20:目标位元件起始地址,只能是位元件(Y,M,S)

*K16:目标位元件个数,只能是数值

*K4:移动的个数,只能是数值

实例:

假设M0=ON,M1=ON,M2=OFF,M3=ON

M20---M23都为ON,M24---M27都为OFF,M28---M31都为ON,M32---M35都为OFF

SFTRP M0 M20 K16 K4(M20---M35以四个位为单位向右移动,M20---M23溢出)

执行的结果为:

M20---M23都为OFF,M24---M27都为ON,M28---M31都为OFF,M32=ON (等于M0),M33=ON(等于M1),M34=OFF(等于M2),M35=ON(等于M3)

SFTLP M0 M20 K16 K4(M20---M35以四个位为单位向左移动,M32---M35溢出)

执行的结果为:

M20=ON(等于M0),M21=ON(等于M1),M22=OFF(等于M2),M23=ON (等于M3),M24---M27都为ON,M28---M31都为OFF,M32---M35都为ON 字右移WSFR与字左移WSFL指令---三菱FX系列PLC应用指令

请慎重使用连续型字右移和字左移指令,脉冲型指令:当驱动输入在ON时只执行一次移动!WSFR,WSFL:连续执行型指令WSFRP,WSFLP:脉冲执行型指令字右移与字左移指令编程方式如下:

WSFRP D10 D20 K16 K4

WSFLP D10 D20 K16 K4

*D10:源寄存器起始地址,可以是寄存器,T,C或是位元件组合,如K4X0

*D20:目标寄存器起始地址,可以是寄存器,T,C或是位元件组合,如K4Y0(不允许输入X组合)

*K16:从D20起始地址开始参预移动的个数,只能是数值。

*K4:移动的个数,每次移动的个数,只能是数值。

实例:

LD M0

WSFRP D20 D30 K4 K2

假设指令执行前

D20=4,D21=5

D30=10 D31=11 D32=12 D33=13

执行一次字右移WSFRP指令的结果是:

D20,D21的值不变。

D30=原D32 D31=原D33 D32=D20 D33=D21

(D30=12 D31=13 D32=4 D33=5)

特例:

移位写入SFWR与移位读出SFRD指令---三菱FX系列PLC应用指令

移位写入SFWR与移位读出SFRD指令可应用于货物编号存放与输出,并记录货物存放与输出的个数,先进先出.

SFWR,SFRD:连续执行型移位写入与移位读出指令

SFWRP,SFRDP:脉冲执行型移位写入与移位读出指令

移位写入SFWR与移位读出SFRD指令编程格式如下:

SFWR D10 D20 K10

SFRD D10 D20 K10

*D10:准备写入或存放读出的数据寄存器,可以是D、T、C、数值或是位元件组合如K4X0

*D20:写入或读出的目标寄存器组起始地址,可以是D、T、C或是位元件组合如K4Y0(不允许位元件X组合)

*K10:只能是数值

实例:

移位写入(假设D10初始值为0,D20--D24的初始值为0)

LD M0

ADD D10 K2 D10

SFWRP D10 D20 K5

当M0第一次从OFF-->ON时,

D10-->D21 结果为:D10=2 D20=1 D21=2 D22=0 D23=0 D24=0

当M0第二次从OFF-->ON时,

D10-->D22 结果为:D10=4 D20=2 D21=2 D22=4 D23=0 D24=0

当M0第三次从OFF-->ON时,

D10-->D23 结果为:D10=6 D20=3 D21=2 D22=4 D23=6 D24=0

当M0第四次从OFF-->ON时,

D10-->D24 结果为:D10=8 D20=4 D21=2 D22=4 D23=6 D24=8

*D20:每次指令执行时加1,记录存放的个数。

移位读出

假设初始值为:D30=4 D31=2 D32=4 D33=6 D34=8

LD M0

SFRDP D30 D20 K5

当M0第一次从OFF-->ON时,

D31-->D20 结果为:D20=2 D30=3 D31=4 D32=6 D33=8 D34=8

当M0第二次从OFF-->ON时,

D31-->D20 结果为:D20=4 D30=2 D31=6 D32=8 D33=8 D34=8

当M0第三次从OFF-->ON时,

D31-->D20 结果为:D20=6 D30=1 D31=8 D32=8 D33=8 D34=8

当M0第四次从OFF-->ON时,

D31-->D20 结果为:D20=8 D30=0 D31=8 D32=8 D33=8 D34=8

*D30:每次指令执行时减1,记录余下的存放个数。

*注意D30存放的数据要与要移动的数据(K4)配合好,小于K4(K5-1)则少移动数据,大于K4(K5-1)呢?如D30=10

当M0第五次从OFF-->ON时,

D31-->D20 结果为:D20=8 D30=5 D31=8 D32=8 D33=8 D34=8

.....

当M0第十次从OFF-->ON时,(如SFRDP D30 D20 K10)

D31-->D20 结果为:D20=8 D30=0 D31=8 D32=8 D33=8 D34=8

结果是D20,D31---D34的值永远不变了。

全部复位ZRST指令---三菱FX系列PLC应用指令

PLC程序经常要复位很多位元件,重复使用RST指令是很烦琐的,如果养成一个良好的习惯:将使用的位元件地址连续编制,就可以使用全部复位指令ZRST,一次性复位很多位元件

ZRST:连续执行型全部复位指令ZRSTP:脉冲执行型全部复位指令

全部复位指令ZRST的编程格式:

ZRST M500 M599

*M500:复位元件的起始地址,可以是T,C,D或位元件组合如K4M0(只能是Y,M,S)

*M599:复位元件的终止地址,可以是T,C,D或位元件组合如K4M0(只能是Y,M,S)

注意:

1、M500,M599这两个操作数必须指定为同一种类型元件,

ZRST M500 D300是错误的。

2、起始地址(M500)要小于终止地址(M599),如果起始地址大于终止地址,则只对起始地址进行复位。

ZRST M10 M0 执行此指令则只复位M10

ZRST D10 D20

将D10----D20的十一个寄存器全部清零

也可以使用

比较指令DECO---三菱FX系列PLC应用指令

比较指令DECO可用于将寄存器(如D100)的值以相应编号的位元件转为闭合状态。如:DECO D100 M0 K4(D100=14,令M14闭合。)

DECO:连续执行型比较指令DECOP:脉冲执行型比较指令

比较指令DECO的编程方式:

DECO X0 D0 K4

*X0:源地址,可以是数值,T,C,D或是位元件X,Y,M,S

*D0:目标地址,可以是T,C,D或是位元件Y,M,S

*K4:位数,只能是数值

比较指令DECO工作过程解释:

DECO M0 D0 n

从M0开始的n个位元件相加,如n=3,则是M0,M1,M2参预计算。

假设M0=ON,M1=OFF,M2=ON,

M2 M1 M0

1 0 1

则计算结果为5。

将目标地址的5(上面的计算结果)位置为1,其他位置0

D0=32(b0位的数值为2的0次方,b1位的数值为2的1次方,b5位的数值为2的5次方)

b15.....b6 b5 b4 b3 b2 b1 b0

0.......0 1 0 0 0 0 0

则D0=32

注:目标地址为位元件时(Y,M,S),n<=8

目标地址为字元件时(T,C,D),n<=4

目标地址为位元件时,DECO指令占用的位数为2的n次方个位数

如DECO D10 M0 K6

2的6次方为64,故此指令占用M0-----M63

目标地址为字元件时,因n<=4,故占用位数为16(2的4次方)个,一个字就够了。

下图为一些例子,读者可以分析图中的运算结果,根本搞懂比较指令DECO

编码指令ENCO---三菱FX系列PLC应用指令

编码指令ENCO与比较指令DECO是相反指令,理解了比较DECO指令就不难理解编码指令ENCO

先请看一下比较指令DECO:https://www.360docs.net/doc/573689401.html,/gplc/2008/10/20081023210117.asp ENCO:连续执行型编码指令ENCOP:脉冲执行型编码指令

编码指令ENCO的编程格式:

ENCO M10 D10 n

*M10:源地址,可以是T,C,D或是位元件(X,Y,M,S)

*D10:目标地址,可以是T,C,D

*n:位数,只能是数值如K3或是H2

注:

源地址内多个位是1时忽略低位侧,只计算最高位

当源地址为位元件时,n<=8

当源地址为字元件时,n<=4

n的含义:源地址从左边起的2的n次方个位参预计算

解释如下:

1、源地址内多个位是1时忽略低位侧,只计算最高位

ENCO D10 D30 K4

如:D10=515

b15......b10 b9 b8.....b2 b1 b0

0........0 1 0......0 1 1

指令只计算高位b9,运算结果是:D30=9

2、当源地址为位元件时,n<=8

ENCO M0 D30 K7

只指令是M0----M127(2的7次方等于128)参预运算。

如M127........M120 M119 M118........M1 M0

0...........0 1 0.........0 1

指令只计算高位M119,运算结果是:D30=119

3、当源地址为字元件时,n<=4

编码指令是16位指令,16位寄存器当然就是不能超过2的4次方(16)

实例看第一个。

4、n的含义:源地址从左边起的2的n次方个位参预计算

如第一个例子,n=4,所以是D10的16个位都参预计算。如果b14=1,那么第一个例子的计算结果是D30=14。

如第二个例子,n=7,所以是128个位(M0---M127)参预计算,如果M127=1,那么第二个例子的计算结果是D30=127

ON位数指令SUM---三菱FX系列PLC应用指令

将源地址中的为1的位的个数存入目标地址中,有16位和32位指令区别

SUM,SUMP:16位的连续型和脉冲型ON位数指令

DSUM,DSUMP:32位的连续型和脉冲型ON位数指令

ON位数指令SUM编程格式:

SUM D0 D1

*D0:源地址,可以是D,T,C,数值或是位元件组合如K4X0

*D1:目标地址,可以是D,T,C或是位元件组合如K4M0(X除外)

实例:

LD M0

SUMP D0 D1

假设指令执行前D0=23

b15....b5 b4 b3 b2 b1 b0

0......0 1 0 1 1 1

指令结束后D1的值为4

同样,SUM K23 D1的执行结果D1=4

注,如果用32位指令如DSUMP D0 D2,则D2存入D0为1的个数,D3为0

相关标志位:M8020

当源地址中为1的个数为0时,M8020置位闭合,源地址中为1的个数不为0时,M8020自动复位。

ON位数判断指令BON---三菱FX系列PLC应用指令

ON位数判断指令BON的作用:判断位数指定的源地址位数状态置/复位相应的位元件BON,BONP:16位连续执行或是脉冲执行指令

DBON,DBONP:32位连续执行或是脉冲执行指令

ON位数判断指令BON编程格式:

BON D0 M0 n

*D0:源地址,可以是T,D,C,数值或位元件组合如K4X0

*M0:目标地址,只能是Y,M,S

*n:指定判断的相应位数,只能是数值。16位指令是范围是0--15,32位指令的范围是0--31

实例:

LD M0

BONP D0 Y0 K4

假设D0=31

b15......b5 b4 b3 b2 b1 b0

0.......0 1 1 1 1 1

因为b4位为1,所以执行结果Y0置位闭合。

注:M0闭合时,当b4变为0时Y0复位。如果在b4保持为1的情况下,M0断开,Y0保持置位状态。

三菱PLC比较置位指令DHSCS和复位指令DHSCR(高速计数器用)

FXPLC比较置位指令DHSCS和复位指令DHSCR是对高速计数器的计数值进行比较,并将比较结果实现立即输出,不受扫描周期的影响。

注:比较置位指令DHSCS和复位指令DHSCR只有32位连续执行型指令,其编程格式如下:

LD M8000

DHSCS K100 C255 Y0

DHSCR K100 C255 Y0

*K100,要进行比较的数值,可以是T,C,D,数值或是位元件的组合如K4X0

*C255,要参预比较的高速计数器地址编号,范围C235---C255

*Y0,指令运算结果要控制的位元件,可以是Y,M,S

解释:

当高速计数器C255的当前计数值变化到100时,Y0置位闭合(复位断开),并立即实现输出。

注意到上面的变化到是用的红字,是重点提醒。如果您用MOV指令人为到使用C255与第一操作数K100相等,并不能置位(复位)Y0。

比较:

LD M8000

OUT C255 K100

LD C255

OUT Y10

LD M8000

DHSCS K100 C255 Y10

上面两段程序工作过程都是当高速计数器C255的计数值等于100时,Y10闭合。

但第一个程序要受到PLC扫描周期的影响。

DHSCS与DHSCR实用到中断编程方式:

DHSCS K100 C255 I010

DHSCR K100 C255 I010

其中I0x0:x的范围是1--6

FXPLC区间比较指令DHSZ(高速计数器用)

区间比较指令DHSZ与区域比较指令ZCP的不同点就在于,ZCP指令的输出受程序扫描周期影响,而DHSZ则不受扫描周期的影响实现立即输出。

区间比较指令DHSZ只有32位连续执行型指令,其编程格式为:

DHSZ K100 K200 C255 Y0

*K100:参预比较的下限值,可以是T,C,D,数值或是位元件的组合如K4X10

*K200:参预比较的上限值,可以是T,C,D,数值或是位元件的组合如K4X10

*C255:参预比较的高速计数器地址编号,范围:C235--C255

*Y0:比较的输出结果起始地址编号,可以是Y,M,S

解释:

C255当前值<下限值Y0=ON

下限值<=C255当前值<=上限值Y1=ON

上限值注意:上述的解释只是在高速计数器外接输入端子发生OFF--->ON变化时才生效,在外部输入端子没有脉冲输入时,即使用MOV指令改变C255的当前值,也不会令Y0,Y1或Y2状态改变。

因此为了在C255的当前值小于下限值时Y0闭合可以采用下述编程方式:

LD M8000

OUT C255 K10000

LD M0

DZCPP K1000 K2000 C255 Y0

DHSZ K1000 K2000 C255 Y0

三菱PLC特殊定时器STMR指令

可利用特殊定时器STMR指令形成延时定时器,单触发定时器,闪烁定时器

特殊定时器STMR指令只有16位连续执行型指令,其编程方式:

STMR T0 K100 M0

*T0:只能用T,范围是T0--T199的100毫秒定时器

*K100:只能是数值,范围1---32767

*M0:可以是Y,M,S

其动作原理图如下:

三菱PLC基本指令

PLC 基本指令 FX 2N 系列的PLC 共有基本指令27条,本章主要介绍这些基本指令的功能。并掌握由梯形图转化成指令表,指令表转化成梯形图的方法;然后通过一些编程的示例理解基本指令的应用和一些编程的规则。 3.1 基本指令 3.1.1 LD 、LDI 、OUT 指令 LD ,取指令,表示每一行程序中第一个与母线相连的常开触点。另外,与后面讲到的ANB 、ORB 指令组合,在分支起点处也可使用。 LDI ,取反指令,与 LD 的用法相同,只是LDI 是对常闭触点。 LD 、LDI 两条指令的目标元件是X 、Y 、M 、S 、T 、C 。 OUT ,线圈驱动指令。是对输出继电器(Y )、辅助继电器(M )、状态器(S )、定时器(T )、计数器(C )的线圈驱动,对输入继电器(X )不能使用。 图3-1 LD、LDI、OUT指令的使用说明 8 OUT Y1 7 LD T0 SP K204 OUT T03 OUT M02 LDI X11 OUT Y00 LD X0a) 梯形图 T0 Y1 T0 K20 X1 X0Y0M0步号 程序 驱动定时器线圈b) 指令表 SP为空格键 定时器设定值 目标元件 指令 驱动线圈与母线相连 当OUT 指令驱动的目标元件是定时器T 和计数器C 时,如设定值是常数K 时,则K 的设定范围如表3-1所示:程序步序号是自动生成,在输入程序时不用输入程序步号,不同的指令,程序步号是有所不同的。 表 3-1 K 值设定范围:

3.1.2 触点串联指令AND 、ANI 用于单个常开接点的串联。 ANI ,与非指令。用于单个常闭接点的串联。 AND 与ANI 都是一个程序步指令,串联触点的个数没有限制,该指令可以多次重复使用。使用说明如图3-2所示。这两条指令的目标元件为X 、Y 、M 、S 、T 、C 。 OUT 指令后,通过接点对其他线圈使用OUT 指令称为纵接输出或连续输出,如图3-2 中的OUT Y3。这种连续输出如果顺序不错,可以多次重复。但是如果驱动顺序换成图3-3的形式,则必须用后述的MPS 指令和MPR 指令。 3.1.3 接点并联指令OR 、ORI OR ,或指令。 ORI ,或非指令。 这两条指令都用于单个的常开触点并联,操作的对象是X 、Y 、M 、S 、T 、C 。OR 是用于常开触点,ORI 用于常闭触点,并联的次数可以是无限次。使用说明如图3-4所示。 并联连接 并联连接 0 LD X4Y5 X5图3-4 OR、ORI使用说明 a) 梯形图 X7 M110 M103Y5M102OR OR ORI X10OR M103 b)指令表 9 OUT M103 8 OR M1107 ANI X106 OR M103 AND X74 LD Y53 OUT Y52 ORI M1021 OR X55X4 图3-3 不推荐使用 MPP X3 X4Y3Y2 MPS X5 a)梯形图 X5 X1X3 X4 X2 图3-2 AND、ANI指令使用说明Y3 Y2Y1 6 AND X5b)语句表 7 OUT Y35 OUT Y23 ANI X42 LD X31 AND X20 LD X1 触联常闭触点 串联常开触点

三菱PLC指令详解

一顺控指令 1 触点指令 00 LD 逻辑操作开始 01 LDI 逻辑非操作开始 02 AND 逻辑乘 03 ANI 逻辑乘非 04 OR 逻辑加 05 ORI 逻辑加非 2 连接指令 06 ANB AND逻辑块与 07 ORB OR逻辑块或 08 MPS 存储操作结果 09 MRD 从MPS读取操作结果 10 MPP 从MPS读取操作结果并清除结果 3 输出指令 11 OUT 软元件输出 12 SET 软元件置位 13 RST 软元件复位 14 PLS 在输入信号的上升沿 15 PLF 在输入信号的下降沿 16 CHK 软元件输出翻转

4 移位指令 17 SFT 元件移1位 18 SFTP 元件移1位 5 主控指令 19 MC 主控开始 20 MCR 主控复位 6 结束指令 21 FEND 结束主程序 22 END 总的程序末尾, 返回第0步 7 其它指令 23 STOP 停止 24 NOP 空操作 二基本指令 1 比较指令 16位数据比较 25 LD= 当S1=S2, 接通,当S1≠S2, 断开 26 AND= 27 OR=

28 LD<> 当S1≠S2, 接通,当S1=S2, 断开 29 AND<> 30 OR<> 31 LD> 当S1>S2, 接通,当S1≤S2, 断开 32 AND> 33 OR> 34 LD<= 当S1≤S2, 接通,当S1>S2, 断开 35 AND<= 36 OR<= 37 LD< 当S1= 当S1≥S2, 接通,当S1=

三菱PLC指令详解

三、功能指令 一程序流程00~09 三算术和逻辑运算指令20~29 00 CJ 条件转移20 ADD 加法 01 CALL 调用子程序21 SUB 减法 02 SRET 从子程序返回22 MUL 乘法 03 IRET 中断返回23 DIV 除法 04 EI 开中断24 INC 加一 05 DI 关中断25 DEC 减一 06 FEND 主程序结束26 WAND 字与 07 WDT 监视定时器27 WOR 字或 08 FOR 循环开始28 WXOR 字异或 09 NEXT 循环结束29 NEG 求补 二传送和比较指令10~19 四循环与移位30~39 10 CMP 比较30 ROR 循环右移 11 ZCP 区间比较31 ROL 循环左移 12 MOV 传送32 RCR 带进位循环右移 13 SMOV 移位传送33 RCL 带进位循环左移 14 CML 求补运算34 SFTR 位右移 15 BMOV 数据块传送35 SFTL 位左移 16 FMOV 多点传送36 WSFR 字右移 17 XCH 数据交换37 WSFL 字左移 18 BCD 求BCD码38 SFWR FIFO写 19 BIN 求二进制码39 SFRD FIFO读

五数据处理40~49 七方便指令60~69 40 ZRST 区间复位60 IST 状态初始化 41 DECO 解码61 SER 寻找 42 ENCO 编码62 ABSD 绝对值凸轮顺控 43 SUM ON位总数63 INCD 增量凸轮顺控 44 BON 检查位状态64 TTMR 示教定时器 45 MEAN 求平均值65 STMR 专用定时器—可定义 46 ANS 标志置位66 ALT 交替输出 47 ANR 标志复位67 RAMP 斜坡输出 48 SQR 平方根68 ROTC 旋转台控制 49 FLT 整数转换成浮点数69 SORT 排序 六高速处理50~59 八外部I/O设备70~79 50 REF 刷新70 TKY 十键输入 51 REFF 刷新与滤波处理71 HKY 十六键输入 52 MTR 矩阵输入72 DSW 拨码开关输入 53 HSCS 高速记数器置位73 SEGD 七段码译码 54 HSCR 高速记数器复位74 SEGL 带锁存的七段码显示 55 HSZ 高速记数器区间比较75 ARWS 方向开关 56 SPD 脉冲输出Speed detect 76 ASC ASCII变换 57 PLSY 脉宽调制Pulse Y 77 PR 打印 58 PWM 脉冲调制Pulse width modulation 78 FROM 读特殊功能模块 59 PLSR 带加减速脉冲输出79 TO 写特殊功能模块

三菱PLC指令详解

1触点指令 00LD逻辑操作开始 01LDI逻辑非操作开始 02AND逻辑乘 03ANI逻辑乘非 04OR逻辑加 05ORI逻辑加非 2连接指令 06ANBAND逻辑块与 07ORBOR逻辑块或 08MPS存储操作结果 09MRD从MPS读取操作结果10MPP从MPS读取操作结果并清除结果 3输出指令 11OUT软元件输出 12SET软元件置位 13RST软元件复位 14PLS在输入信号的上升沿15PLF在输入信号的下降沿16CHK软元件输出翻转 4移位指令 17SFT元件移1位 18SFTP元件移1位 5主控指令 19MC主控开始 20MCR主控复位 6结束指令 21FEND结束主程序 22END总的程序末尾, 返回第0步 7其它指令 23STOP停止 24NOP空操作 二基本指令 1比较指令 16位数据比较 25LD=当S1=S2,接通, 当S1≠S2,断开 26AND=? 27OR=? 28LD<>当S1≠S2,接通, 当S1=S2,断开

30OR<>? 31LD>当S1>S2,接通, 当S1≤S2,断开 32AND>? 33OR>? 34LD<=当S1≤S2,接通, 当S1>S2,断开 35AND<=? 36OR<=? 37LD<当S1=当S1≥S2,接通, 当S1=? 42OR>=? 32位数据比较 43LDD=当(S1+1,S1)=(S2+1,S2),接通44ANDD=? 45ORD=? 46LDD<>当(S1+1,S1)≠(S2+1,S2),接通47ANDD<>? 48ORD<>? 49LDD>当(S1+1,S1)>(S2+1,S2),接通50ANDD>? 51ORD>? 52LDD<=当(S1+1,S1)≤(S2+1,S2),接通53ANDD<=? 54ORD<=? 55LDD<当(S1+1,S1)<(S2+1,S2),接通56ANDD<? 57ORD<? 58LDD>=当(S1+1,S1)≥(S2+1,S2),接通59ANDD>=? 60ORD>=? 2算术运算指令 二进制16位加/减 61+(D)+(S)→(D) 62+P? 63+(S1)+(S2)→(D) 64+P? 65-(D)-(S)→(D)

三菱F系列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) 脉宽调制指令

三菱高级指令说明

三菱PLC功能指令:FROM KO K32 K2M132 K1是什么意思 FROM从KO模块中32#寄存器中读取数据,传送到K2M132中改变M132~M139的状态,传送寄存器和存储数量是×1个(就是只传32#和只存K2M132)。 从32#寄存器中读出的数字可能是10进制或16进制如15,PLC自动将其转换成二进制如1111,再将其写入位元件的状态寄存器中。1表示开,0表示关。 K2M132表示从低位M132开始到4×2=8个位即M132到M139. 将11110000从低到高写入,这样表示M132~M135状态是1,接通;M136~M139状态是0,断开。 补充回答: PLC基本模块和模拟量输入输出模块之间的数据通讯是靠FROM和TO指令执行的,FROM 和TO指令实际上都是针对模拟量输入输出模块中的缓冲寄存器BFM进行的,FROM是将数据读入PLC,而TO则是将基本模块中的数据写到特殊功能模块内的缓冲寄存器。 TOP H0 K150 D2 K6 TO指令用于向特殊模块写入数据,H0代表第1块扩展模块。K150就是指在扩展模块上的参数地址,后面的D2就是指要写入的首地址,K6代表写入数量。 TOP H0 K150 D2 K6 就是指,将D2开始的6个字的参数写入第一块扩展模块的第150个参数地址去。 三菱FX2N系列PLC的TO指令、FROM指令及实例FX2N-4AD 应用程序 TO指令是从PLC对增设的特殊单元(如FX2N-4DA)缓冲存储器(BFM)写入数据的指令 TO,TOP:十六位连续执行和脉冲执行型指令 DTO,DTOP:三十二位连续执行和脉冲执行型指令 TO指令的编程格式:TO K1 K12 D0 K2 *K1:特殊模块的地址编号,只能用数值,范围:0---7 *K12:特殊模块的缓冲存储器起始地址编号,只能用数值,范围:0---32767 *D0:源寄存器起始地址编号,可以用T,C,D数值和位元件组合如K4X0 *K2:传送的点数,只能用数值。范围:1---32767 TO K1 K12 D0 K2指令的作用是:将PLC的16位寄存器D0,D1的数值分别写入特殊单元(或模块) N0.1的缓冲寄存器(BFM)#12,#13中。 1、在特殊辅助继电器M8164闭合时,D8164内的数据做为传送点数。 2、特殊辅助继电器M8028断开状态,在TO指令执行时,自动进入中断禁止状态,输入中断和定时器中 断不能执行。在这期间发生的中断只能等FROM指令执行完后开始执行。TO指令可以在中断程序中使用 3、特殊辅助继电器M8028闭合状态,在TO指令执行时,如发生中断则执行中断程序,TO指令不能在中断 程序中使用。 FROM指令是将PLC增设的特殊单元(如FX2N-4AD)缓冲存储器(BFM)的内容读到可编程控制器的指令FROM、FROMP:十六位连续执行和脉冲执行型指令 DFROM、DFROMP:三十二位连续执行和脉冲执行型指令 读出指令FROM的编程格式:FROM K1 K29 D0 K2 *K1:特殊模块的地址编号,只能用数值,范围:0---7 *K29:特殊模块的缓冲存储器起始地址编号,只能用数值,范围:0---32767

对三菱plc指令的理解

基本逻辑指令 FN2N M8000-M8255 特殊继电器 M8000:运行监视器(在plc运行中一直接通)M8001:与M8000相反的逻辑 M8002:初始脉冲(仅在运行开始时瞬间接通)M8003 :与M8002相反逻辑 M8011:10ms M8012:100ms M8013:1s M8014 :1min (开一半时间关一半的时间)T0~T199 200点100ms T200~T245 46点10ms T246~T249 4点10ms累计型T250~T255 5点100ms累计型 定时器的范围是0~32767 C0~C99 100点C100~199 100点累计型C200~C219 20点C220~C234 15点累计型 FX2N FX2NC系列每个寄存器都是16bit(最高位为正、负符号位) 也可用两个数据寄存器合并起来存储32bit (最高位为正、负符号位) D0~D199 200点D200~D511 312点D512~D7999 7488点D8000~D8255 256点[MOV K3 D1] 是把3传到D1里(K表示常数 H表示十六进制的常数,在plc里不能直接的写一个数值,要写数据前面加K 或者H ) [DMOV K50000 D4] 是把K50000传送到D4,D5面 [MOV D10 D4] 是把D10里的数据传送到D4里 [DMOV D20 D22] 是把(D20,D21)(是一个32位数据)里的数据传送到(D22,D23)里去 MOV:传送(可以传送32位的数据,可脉冲)

案例

X、 Y 、M、 S...是位软元件 T、C、D、V...是字软元件 K1X3 K1表示1组(即4位)X3表示起始位即使从X3开始的4位X3 X4 X5 X6的信号K2Y1 K2表示2组(即8位)Y1表示起始位即使从Y1开始的8位~~ LD:读取常开点。LDI:读取常闭点。OUT:线圈输出 AND:串入常开点ANI:串入常闭点 OR:并入常开点ORI:并入常闭点 ANB:电路块串联ORB:电路块并联 SET:线圈保持(set指令的执行对象:Y,M,S 其功能与自锁类似) RST:清除线圈输入(rst指令的执行对象是:Y,M,S,T,C,D,V,Z 让对象清 楚动作,寄存器的值清0 ) ZRST:成批复位

三菱PLC指令详解

一、顺控指令 1 触点指令 00 LD 逻辑操作开始 01 LDI 逻辑非操作开始 02 AND 逻辑乘 03 ANI 逻辑乘非 04 OR 逻辑加 05 ORI 逻辑加非 2 连接指令 06 ANB AND逻辑块与 07 ORB OR逻辑块或 08 MPS 存储操作结果 09 MRD 从MPS读取操作结果 10 MPP 从MPS读取操作结果并清除结果 3 输出指令 11 OUT 软元件输出 12 SET 软元件置位 13 RST 软元件复位 14 PLS 在输入信号的上升沿 15 PLF 在输入信号的下降沿 16 CHK 软元件输出翻转 4 移位指令 17 SFT 元件移1位 18 SFTP 元件移1位 5 主控指令19 MC 主控开始 20 MCR 主控复位 6 结束指令 21 FEND 结束主程序 22 END 总的程序末尾, 返回第0步 7 其它指令 23 STOP 停止 24 NOP 空操作 二基本指令 1 比较指令 16位数据比较 25 LD= 当S1=S2, 接通, 当S1≠S2, 断开 26 AND= 27 OR= 28 LD<> 当S1≠S2, 接通, 当S1=S2, 断开 29 AND<> 30 OR<> 31 LD> 当S1>S2, 接通, 当S1≤S2, 断开 32 AND> 33 OR> 34 LD<= 当S1≤S2, 接通, 当S1>S2, 断开 35 AND<= 36 OR<= 37 LD< 当S1= 当S1≥S2, 接通, 当S1= 42 OR>= 32位数据比较 43 LDD= 当(S1+1,S1)=(S2+1,S2), 接通 44 ANDD= 45 ORD= 46 LDD<> 当(S1+1,S1)≠(S2+1,S2),接 通 47 ANDD<> 48 ORD<> 49 LDD> 当(S1+1,S1)>(S2+1,S2), 接通 50 ANDD> 51 ORD> 52 LDD<= 当(S1+1,S1)≤(S2+1,S2),接 通 53 ANDD<= 54 ORD<= 55 LDD< 当(S1+1,S1)<(S2+1,S2), 接通 56 ANDD< 57 ORD< 58 LDD>= 当(S1+1,S1)≥(S2+1,S2),接 通 59 ANDD>= 60 ORD>= 2 算术运算指令 二进制16位加/减 61 + (D)+(S)→(D) 62 +P 63 + (S1)+(S2)→(D) 64 +P 65 - (D)-(S)→(D) 66 -P 67 - (S1)-(S2)→(D) 68 -P 二进制32位加/减 69 D+ (D+1,D)+(S+1,S)→(D+1,D) 70 D+P 71 D+ (S1+1,S1)+(S2+1,S2)→(D+1,D) 72 D+P 73 D- (D+1,D)-(S+1,S)→(D+1,D) 74 D-P 75 D- (S1+1,S1)-(S2+1,S2)→(D+1,D) 76 D-P 77 * (S1)×(S2)→(D+1,D)

三菱PLC使用手册

三菱 FX2N 可编程控制器使用手册 一、可编程控制器的内部编程元件 1、输入继电器 X: X000~X017共16点 2、输出继电器 Y: Y 000~Y017共16点 3、辅助继电器 M:1)通用辅助继电器M0~M499 共 500 点 2)断电保持继电器M500~M3071 共 2572 点 3)特殊辅助继电器M8000~M8255 共 256 点 4、状态继电器 S:S0~S499共500点 1)初始状态继电器S0~S9 共 10 点 2)回零状态继电器S10~S19共 10 点,供返回原点用 3)通用状态继电器S20~S499共 480点 4)断电保持状态继电器S500~S899共400点 5)报警用状态继电器S900 ~S999共100点 5、定时器 T: T0~T255共256点 1)常规定时器 T0 ~ T255共256点 T0~ T199为 100ms定时器,共 200 点,其中 T192~T199 为子程序 中断服务程序专用的定时器。 T200~T245 为 10ms定时器共 46 点 2)积算定时器 T246 ~T255 共 10 点 T246~T249 为 1ms积算定时器共4点 T250~T255 为 100ms积算定时器共6点 6、计算器 C :C0~ C234共235点 1)16 位计数器C0 ~ C199共200点 其中 C0~C99 为通用型共 100 点 C100~C199为断电保持型共100 点 2)32 位加 / 减计数器 C200~ C234 共 35 点 其中 C200~ C219为通用型共 20 点 C220~C234为断电保持型共15 点 7、指针 P/I 1)分支用指针 P0~P127 共 128 点 2)中断用指针 I XXX共 15 点 其中输入中断指针 100~ 150 共 6 点 定时中断指针 16~18共3点 计数中断指针 1010~1060共6点 8、数据寄存器 D 1)通用数据寄存器D0~D199 共 200 点 2)断电保持数据寄存器D200~D7999 其中断电保持用 D200~D511 共 312 点 不能用软件改变的断电保持 D512~D7999 共 7488 点,可用 RST 和 ZRST指令清除它的内容。

三菱plc常用的指令详解

以下是三菱plc常用的指令,还有不懂的可以问我 一程序流程控制指令—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 多点传送(1点→n点) 17 XCH 数据交换,(D0)←→(D2) 18 BCD BCD变换,BIN→BCD 19 BIN BIN变换,BCD→BIN 三算术、逻辑运算指令—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 信号报警器标志置位 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 数据排序

三菱PLC主控指令的用法

三菱FX系列PLC主控指令 FX系列PLC有基本逻辑指令20或27条、步进指令2条、功能指令100多条(不同系列有所不同)。本节以FX2N为例,介绍其基本逻辑指令和步进指令及其应用。 FX2N的共有27条基本逻辑指令,其中包含了有些子系列PLC的20条基本逻辑指令。 主控指令(MC/MCR):(1)MC(主控指令)用于公共串联触点的连接。执行MC后,左母线移到MC触点的后面。(2)MCR(主控复位指令)它是MC指令的复位指令,即利用MCR指令恢复原左母线的位置。 在编程时常会出现这样的情况,多个线圈同时受一个或一组触点控制,如果在每个线圈的控制电路中都串入同样的触点,将占用很多存储单元,使用主控指令就可以解决这一问题。MC、MCR指令的使用,利用MC N0 M100实现左母线右移,使Y0、Y1都在X0的控制之下,其中N0表示嵌套等级,在无嵌套结构中N0的使用次数无限制;利用MCR N0恢复到原左母线状态。如果X0断开则会跳过MC、MCR之间的指令向下执行。 MC、MCR指令的使用说明:(1)MC、MCR指令的目标元件为Y和M,但不能用特殊辅助继电器。MC占3个程序步,MCR占2个程序步;(2)主控触点在梯形图中与一般触点垂直。主控触点是与左母线相连的常开触点,是控制一组电路的总开关。与主控触点相连的触点必须用LD或LDI指令。(3)MC指令的输入触点断开时,在MC和MCR之内的积算定时器、计数器、用复位/置位指令驱动的元件保持其之前的状态不变。非积算定时器和计数器,用OUT指令驱动的元件将复位,当X0断开,Y0和Y1即变为OFF。(4)在一个MC指令区内若再使用MC指令称为嵌套。嵌套级数最多为8级,编号按 N0→N1→N2→N3→N4→N5→N6→N7顺序增大,每级的返回用对应的MCR指令,从编号大的嵌套级开始复位。

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