课程中心
HOME
课程中心
正文内容
plc编程比较指令 2分钟学会PLC比较指令的应用
发布时间 : 2025-01-23
作者 : 小编
访问数量 : 23
扫码分享至微信

2分钟学会PLC比较指令的应用

现今物流行业迅猛发展,快递公司和邮局每天会汇集来自全国各地数以亿计的邮件,这些邮件经过识别后会以不同的地域进行分类,再散发到目的地。

邮件的自动分拣一直是决定物流速度的核心技术问题,如何自动识别邮件的编码并自动进行分拣呢?本文通过学习S7-1200的比较指令、拨码卡关的结构来完成一个PLC控制的自动邮件分拣系统。

认识PLC的比较指令

比较指令共分为两大类,包括比较数值大小的指令和比较数值范围的指令。

1 、比较数值大小的指令

比较数值大小指令有等于、不等于、大于或等于、小于或等于、大于、小于这六种判断条件。这类指令均有两个操作数IN1与IN2,可以是位字符串、整数、浮点数、字符串、TIME、DATE、TOD、DTL。以下分别是6中比较指令的应用举例。

如上图所示,指令符号的上下各有一个占位符,分别用来填写操作数1和操作数2,操作数可以是地址或常数,且必须是相同的数据类型。当操作数1与操作数2进行比较,满足比较条件时,输出端为1,反之输出端为0。例如图 中,地址MB20与MB30中的数值如果相等,则输出线圈Q0.0得电。

多个比较指令还可以进行串联和并联,串联比较指令时执行“与”运算,并联

比较指令时执行“或”运算。

2、 比较数值范围的指令

比较数值范围的指令有“值在范围内”和“值超出范围”两种判断条件。

(1) 值在范围内(IN_RANGE)指令

表示符号如下,用来比较输入参数是否在设定的数值范围之内,如果输入参数在设定参数范围内则使能端有能流输出。如气动设备的压力在允许范围内时,绿色指示灯亮,表示设备处于正常工作状态。

在该指令名称下面,单击???会显示数据类型下拉列表,该指令支持的数据类型为整数和浮点数。

VAL、MIN、MAX这三个端口输入的值既可以是地址也可以是常数,需要注意的是在进行比较操作时,MIN、MAX和VAL的值必须与设置的数据类型相匹配,否则在输入指令时会报错。

IN_RANGE指令工作原理:将输入 VAL 的值与输入 MIN 和 MAX 的值进行比较,并将结果发送到功能框输出中。 如果输入 VAL 的值满足 MIN <= VAL 且 VAL <= MAX 的比较条件,则功能框输出的信号状态为“1”。 如果不满足比较条件,则功能框输出的信号状态为“0”。

(2) 值超出范围(OUT_RANGE)指令

表示符号如下,该指令的各端口及所支持的数据类型与IN_RANGE指令相同,用来比较设定的参数是否在设定范围内,如超出范围使能端有能流输出。例如将温度传感器采集的当前温度值存入地址MD40中,如果当前温度值超出了安全的温度范围,报警指示灯亮。

3、 检查有效性的指令

(1)比较是否为实数

指令符号为—|OK|—,可以检查操作数的值是否为有效的浮点数,该操作数必须是一个地址。因为—|OK|—检查有效性只针对实数类型(Real),所以程序上方操作数用长度为32位的地址,如MD40。

如下图程序所示,检查地址MD40中的数值是否为实数,如果操作数的值是有效浮点数且指令的信号状态为“1”,则该指令输出的信号状态为“1”。 在其它任何情况下,“检查有效性”指令输出的信号状态都为“0”。

(2)比较是否为非实数

指令符号为—|NOT OK|—,可使用该指令检查操作数的值是否为无效的浮点数。该指令符号如下:

可以同时使用“检查有效性”指令和 EN 机制。 如果将该指令功能框连接到 EN 使能输入,则仅在值的有效性查询结果为正数时才置位使能输入。 使用该功能,可确保仅在指定操作数的值为有效浮点数时才启用该指令。

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 软件的实现

相关问答

plc编程比较指令?

数据比较指令就是比较两个数据大小,真假等变量,具体那个数据是时间还是计数或者是采集自模拟口的模拟量,都是可以的。但前提是数据类型必须符合要求你要...

plc编程比较指令用途?

机内数据的存取管理。在数据运算过程中,机内的数据传送是不可缺少的。运算可能要涉及不同的工作单元,数据需在他们之间传送;运算可能会产生一些中间数据,这...

三菱PLC比较指令?

用于比较两个数据的大小或关系。比较指令是PLC中常用的指令之一,用于判断两个数据的大小关系,并根据比较结果进行相应的逻辑操作。三菱PLC提供了多种比较指令,...

plc编程中的区间比较指令ZCP?

ZCP为三菱系列区间比较指令,其源操作数为三位S1S2S3(K,H,KnX,KnY,KnM,KnS,T,C,D,V,Z)均为字元件,目标操作数D(YMS)为位元件,如下:LDX0ZCPK10K20C0...

plc如何正确选择正确的循环指令?

使用循环指令(LOOP)可以多次重复执行特定的程序段,由累加器1确定重复执行的次数,即以累加器1的低字为循环计数器。LOOP指令执行时,将累加器1字中的值减1,如...

欧姆龙plc比较指令=(300)什么意思?

比较指令等于也就是说W13中的值等于0,那么能流接通。(300)是指令编号,用于手持编程器的快速输入,对于使用CXP软件的用户来说,没有意义。比较指令等于也就...

台达PLC中绝对值指令和相对值指令的区别?

绝对值指令指使当前位置变化到指定定位的位置,相对值指令指相对原位置增减位数后定位的位置。台达PLC,是台达ProgrammableLogicController的缩写,又名台达...

西门子plc运算指令?

西门子PLC的运算指令包括算术运算指令,逻辑运算指令,比较运算指令,移位指令和其他特殊函数指令。这些指令用于在PLC程序中对数据进行操作,满足自动化控制系统...

西门子plc加减乘除指令实例?

举例说明:1.假如PLC用在机床上面,那么最简单的,机床的工件计数就要用到加法指令2.假如PLC用在检测设备上面,那么就会有三种计数,一种是合格品,一种是不...

问下大神。PLC写程序的时候有这样一个指令。{MOVK2K2Y0Z0}...

PLC写程序的时候有这样一个指令。{MOVK2K2Y0Z0}请问后面的Z0是什么意思?举报机箱鑫谷鑫谷SG-7033人讨论3395次围观关注问题写回答讨论回答(3)chen....

 汽车信号干扰器  销魂殿txt 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部