一个案例,学习PLC的传送与比较指令用法
点击↑关注,PLC进阶就上“技成PLC课堂”!
1、比较指令CMP
CMP指令有三个操作数:两个源操作数[S1.]和[S2.],一个目标操作数[D.],该指令将[S1.]和[S2.]进行比较,结果送到[D.]中。CMP指令使用说明如图所示。
2、区间比较指令ZCP
ZCP指令是将一个操作数[S.]与两个操作数[S1.]和[S2.]形成的区间比较,且[S1.]不得大于[S2.],结果送到[D.]中。ZCP指令使用说明如图所示。
3、传送指令MOV
MOV指令将源操作数的数据传送到目标元件中,即[S.]→[D.]。MOV指令的使用说明如图所示。当X0为ON时,源操作数[S.]中的数据K100传送到目标元件D10中。当X0为OFF,指令不执行,数据保持不变。
4、移位传送指令SMOV
首先将二进制的源数据(D1)转换成BCD码,然后将BCD码移位传送,实现数据的分配、组合。源数据BCD码右起从第4位(m1=4)开始的2位(m2=2)移送到目标D2/的第3位(n=3)和第2位,而D2/的第4和第1两位BCD码不变。然后,目标D2/中的BCD码自动转换成二进制数,即为D2的内容。BCD码值超过9999时出错。
5、取反传送指令CML
CML指令使用说明如图所示。将源操作数中的数据(自动转换成二进制数)逐位取反后传送。
6、块传送指令BMOV
BMOV指令是从源操作数指定的元件开始的n个数组成的数据块传送到指定的目标。如果元件号超出允许的元件号范围,数据仅传送到允许的范围内。BMOV指令的使用说明如图所示。
7、多点传送指令FMOV
FMOV指令是将源元件中的数据传送到指定目标开始的n个目标元件中,这n个元件中的数据完全相同。FMOV指令使用说明如图所示。
8、数据交换指令XCH
XCH指令是将两个目标元件D1和D2的内容相互交换。使用说明如图所示。
9、BCD变换、BIN变换指令
BCD是将源元件中的二进制数转换为BCD码送到目标元件中。对于l 6位或32位二进制操作数,若变换结果超出0-9999或0-99999999的范围就会出错。
BCD指令常用于将PLC中的二进制数变换成BCD码输出以驱动LED显示器。BIN是将源元件中的BCD码转换为二进制数送到目标元件中。常数K不能作为本指令的操作元件。如果源操作数不是BCD码就会出错。
BIN指令常用于将BCD数字开关的设定值输入到PLC中。案例:货料小车控制
一、控制要求
某车间有 6 个工作台,送料车往返于工作台之间送料,每个工作台设有一个到位开关( SQ )和一个呼吸按扭( SB )。
具体控制要求如下:
( 1 )送料车开始应能停留在 6 个工作台中任意一个到位开关的位置上。
( 2 )设送料车现暂停于 m 号工作台( SQ m 为 ON )处,这时 n 号工作台呼叫( SQ n 为 ON ),若:
(a) m>n ,送料车左行,直至 SQ n 动作,到位停车。即送料车所停位置 SQ 的编号大于呼叫按扭 SB 的编号时,送料车往左行运行至呼叫位置后停止。
(b) m<n ,送料车右行,直至 SQ n 动作,到位停车。即送料车所停位置 SQ 的编号小于呼叫按扭 SB 的编号时,送料车往右运行至呼叫位置后停止。
(c) m=n ,送料车原位不动。即送料车所停位置 SQ 的编号与呼叫按扭 SB 的编号相同时,送料车不动。
二、 PLC 硬件的实现
1、I/O的分配表
2、I/O的外部接线
三、 PLC 软件的实现
图中将送料车当前位置送到数据寄存器 D0 中,将呼叫工作台号送到数据寄存器 D1 中,然后通过 D0 与 D1 中数据的比较,决定送料车的运行方向和到达的目标位置。
延伸阅读:
37个三菱PLC常见错误代码大全及解决方案
3分钟了解PLC的点动控制原理
推荐 | 西门子S7-SCL编程与应用(基础教程)
电气电路丨16张PLC控制的转化桥梁:梯形图
常见PLC程序实例详细分析,看完就懂(附图)
↓↓↓免费学习PLC课程!
PLC中CMP比较指令应用
描述:CMP比较指令是比较2个值,将其结果(大、一致、小)输出软元件(3点)。
1、动作和说明
2、K2>D0(数字为0)状态M10被激活同时Y0线圈得电。
3、K2=D0(数字为2)状态M11被激活同时Y1线圈得电。
4、K2<D0(数字为3)状态M12被激活同时Y2线圈得电。
结论:本练习程序应用比较指令CMP同时也用到了ALT交替输出指令、加1指令INC当X1触发接通取上升沿时D0自动加1、减1指令DEC当X2触发接通取上升沿时D0自动减1。喜欢的朋友请点关注。
相关问答
三菱的PLC的CMP指令怎么用,西门子的PLC比较指令是否与三菱的一样,用法也一样?
用法有很大的区别哦,不能完全相等!前面三菱FX2N,后面S7-200:INCP=INCBDECP=DECBDECO=DEC0PLS=EUANS=siemensno!CMP=(=,,=,...
三菱plc指令cmpk1y0k2m0麻烦帮忙解释一下?
CMP是比较指令,K1Y0的意思是有Y0Y1Y2Y3Y4四个点使用二进制组成的数,和K2——十进制常数2比较,比较结果存放在M0开始的M0,M1,M2三个位上K1Y0>2时M0=1;K1Y0=2...
西门子plc程序控制指令?
关于这个问题,以下是一些常见的西门子PLC程序控制指令:1.LD:加载指令,将一个变量或者寄存器的值加载到一个寄存器中。2.AND:逻辑与指令,将两个逻辑值进...
plccmp在西门子300代表什么?
根据我的了解,PLCCMP是西门子300系列(SimaticS7-300)中的一个模块代号,具体代表着西门子300系列中的压力和流量测量模块(PressureandFlowMeasuremen...
PLC里面的指令分别代表什么?
20个基本指令:LD:取指令(常开触点)LDI:取反指令(常闭触点)AND:串指令(常开触点)ANI:串反指令(常闭触点)OR:并指令(常开触点)ORI:并反指令...20个基本指...
三菱plc编程指令?
展开全部以下是三菱plc常用的指令,还有不懂的可以问我一程序流程控制指令—FNC00~0900CJ条件转移01CALL子程序调用02SRET子程序返回03IRET中断...
三菱PLC中CMPD100K2000M100什么意思–960化工网问答
三复老离转附火菱PLC中CMP是应用指令中的数据比较指令直谁确院门,指令功能是将两个数据进行比较大小,比较结果用三个连续继电器输出。[CMPD100K2000M100]表示...
西门子plc的编码和译码指令?
编码指令:MOV,ADD,SUB,MUL,DIV,AND,OR,XOR,CMP,JMP,JMPC,CALL,RET,LOD,STO,IN,OUT,ANDI,ORI,XORI,ROTL,ROTR,BSL...
三菱plc中比较指令的具体用法?
比较指令是用在常开触点的指令,有LD>;LD<;LD>=;LD<=;LD==;LD<>(不等于);有这6条指令,OR和AND也同样有这6条指令,共18条比较指令,...
三菱plc三个数怎么比较大小?
三菱PLC中可以使用比较指令来比较三个数的大小。其中,比较指令有以下几种:1.CMP:比较两个数的大小,如果相等则输出0,如果第一个数大于第二个数则输出1,否...