研选课堂
HOME
研选课堂
正文内容
plc比较指令编程 2分钟学会PLC比较指令的应用
发布时间 : 2024-11-25
作者 : 小编
访问数量 : 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编程中有没有位比较指令?可以比较x和m以及y?

用movk4x30k4y10能完成X30-X47的置位,剩下的X505152单独写指令。具体含义,三菱手册里有。但是,需要注意的是,用这条MOV指令,实际表现出来的,并不是...用...

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

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

三菱PLC里面的ALT指令怎么用呀。-懂得

ALT指令是交替输出假设Y0为指示灯。LDPX0ALTY0此时Y0是灭灯状态,按下X0,指示灯就亮灯。再按一次灭灯,再按一次亮灯。就这样简单,就是会交替输出。这...

三菱plc编程过程中的快捷键以及F1-F10这些键都有哪些功能?-...

GXDeveloper中的,创建Ctrl+N打开工程文件Ctrl+O保存工程文件Ctrl+S打印Ctrl+P撤图剪切/粘贴Ctrl+Z删除选择内容并存入剪切板Ctrl+X复制Ctrl+C粘贴Ct...

plc计数指令怎么输入?

可以按下述步骤输入1、假设x1为检测信号,在软件中用X1对C0计数,在左母线处可以直接输入“LDX1”2、以C0作为内部计数器,我们假设X1检测3次之后C0动作,这时...

CP1H使用2路模拟量输入AD模块,如何在PLC里编程?

首先,你需要的PLC中去设定需要的量程,以及对应的分辨率:1、如果你使用内建的AD输入,那么对应的模拟量输入地址就是:200CH~203CH例如如果使用AD0的话,对...

信捷plc计数器指令格式?

信捷PLC的计数器指令格式与一般的西门子PLC指令格式略有不同。以下是信捷PLC计数器指令的基本格式:```CDXX:计数器指令指令格式:CDXX[计数器类型][计数器...

西门子plc时钟指令编程实例?

西门子PLC时钟指令编程实例可以通过SFC14指令来实现。在程序中定义一个时间变量,然后使用SFC14指令读取系统时间,并将其存储到定义的变量中。可以通过这个变量...

abbplc编程指令?

abbplc的编程指令用于控制机器人的运动,包括直线运动、圆弧运动、旋转运动等等。其中比较常见的运动指令包括:1,用于控制机器人进行关节运动,即指定机器人的...

plc编程指令符号是什么意思?

PLC编程指令符号是一种用于编写可编程逻辑控制器(PLC)程序的符号表示法。它们用于描述PLC程序中的逻辑操作、数学运算、数据传输和控制功能。每个指令符号都...

 约定 光良  dnf中央公园 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

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

热线

188-0000-0000
专属服务热线

微信

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