研选课堂
HOME
研选课堂
正文内容
plc编程数值比较 2分钟学会PLC比较指令的应用
发布时间 : 2025-06-08
作者 : 小编
访问数量 : 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数据格式搞混,16张图轻松学会不同的数据类型

原创不易,每篇文章都倾注了我的心血,大家喜欢的话请点赞并分享,您的支持是我坚持下去的动力!

关于西门子PLC中数据类型的使用

PLC编程时,首先要建立变量,而建立变量就要确立变量的数据类型,不过在此之前先了解下位、字节、字、双字等的区别。

位:bit,是计算机存储信息的最小单位,它指的是二进制的位

字节:byte,它和位的关系是1字节等于8位,1byte = 8 bit

字:word,1字等于2字节,即1 word = 2 byte = 16 bit

所以在西门子PLC中,你会看到这些,MB,MW,MD,他们分别指的是8位、16位、32位。

2 但是在PLC编程中,什么时候用字,什么时候用字节、什么时候用双字呢

这个要看你所存储的数值大小,一般来说:

1字节可以存储2的8次方,即0~255,一个256个

1字可以存储2的16次方,即65536个,或者-32768-32767

至于双字,即2的32次方,都上亿了

因此,当你计算脉冲个数的时候,一般选用双字,32位的,其他的则看情况,需要存储的多。

其实很多新人在刚刚接触PLC的时候会对这些数据感到很麻烦;

其实作者在学校学习数据转换的时候也感到很莫名其妙,可是在接触程序后就感到有这么多数据很方便。

比如说BCD码,现在来说使用的频率不是很高,但是它在拨码开关,数码管现实等方面的应用比其他格式方便很多。

下面给大家分享一个很好的学习资料,方便大家掌握转换指令以及格式。

西门子的高低位一定要注意,因为西门子PLC和WINCC的定义有一些区别。

(如果喜欢这篇文章,请点赞并关注,更多原创的工业应用以及PLC学习的文章等着你)

相关问答

三菱plc的数据比较指令的应用?

三菱PLC(可编程逻辑控制器)的数据比较指令用于对比两个数据,并根据比较结果采取不同的控制动作。以下是一些三菱PLC数据比较指令的应用场景:1.比较控制:...

三菱plc数据比较怎么写?

[CMPS1S2D]比较源S1和源S2的大小,譬如[CMPK100C20M0]比较源S1和源S2的内容,大小一致时D动作。M0在K100>C现在的值20时ONM1在K100=C现在的值20时O...

在触摸屏上输入一个数和PLC内一个数比较,如何编程?

屏上建一下数字输入控件属性里填写参数,挂起对应PLC程序里的地址,VW、VD都可以,看你字节长度。就这样。。。屏上建一下数字输入控件属性里填写参数,挂起对...

三菱Q系列plc多个数值比较指令怎么用?

在三菱Q系列PLC中,多个数值比较指令可以通过使用CMP命令来实现。CMP命令具有参数范围,可在其中指定要比较的数值的个数和起始地址。然后,通过使用跳转指令将条...

三菱PLC比较指令?

三菱PLC的比较指令用于比较两个数据的大小。比较指令是PLC中常用的一种指令,用于比较两个数据的大小,并根据比较结果执行相应的逻辑操作。三菱PLC的比较指令包...

plc顺序表参数?

PLC顺序表的参数包括以下几个方面:1.顺序表的名称:顺序表是PLC程序中的一个数据结构,需要给其起一个合适的名称。2.顺序表的大小:顺序表的大小是指表中元素...

plc与c语言的数据类型?

PLC是可编程逻辑控制器的缩写,它通常用于工业自动化控制领域。PLC与C语言的数据类型之间存在一定的差异。PLC通常使用的数据类型包括布尔型(bool)、整数...

plc一个字的最大数值是多少?

您好,在计算机领域中,PLC是ProgrammableLogicController的缩写,它是一种可编程逻辑控制器。PLC通常用于工业自动化控制系统中,用于控制和监测各种机器和设...

plc计数器能用于比较指令吗?

1.是的,PLC计数器可以用于比较指令。2.这是因为PLC计数器可以用来记录和监控特定事件的发生次数,而比较指令可以用来比较计数器的值与设定的目标值进行判断...

关于三菱PLC的计数指令(C)与比较指令(CMP)的简单问题?

CMP是比较指令,用于16位数据比较,比较的数据范围是-32768到+32767,比较数据类型可以是常熟K,H等,可以是数据寄存器D,也可以是计数器C,可以是时间继电器T,...C...

 窍门生活一点通  流量刷 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

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

热线

188-0000-0000
专属服务热线

微信

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