研选课堂
HOME
研选课堂
正文内容
plc异或门编程讲解 西门子PLC编程基本字逻辑指令‘与,或,异或’(科普篇)
发布时间 : 2024-11-25
作者 : 小编
访问数量 : 23
扫码分享至微信

西门子PLC编程基本字逻辑指令‘与、或、异或’(科普篇)

引言

字基本逻辑指令前世今生 汇编作为较为底层的编程语言,其最直观的操作寄存器使得它的执行效率非常的高,因此,汇编中会大量设置到逻辑操作,与(AND),或(OR),非(NOT)和异或(XOR),这几个指令,除了NOT外,都是双目操作,而NOT操作属于单目操作,通常完成一些对指定位的数据的赋值或者置零操作。

PLC编程里面也常会用到这几个指令

一、指令简介

1.1 AND:“与”运算

可以使用“与”运算指令将输入 IN1 的值和输入 IN2 的值按位进行“与”运算,并在输出 OUT 中查询结果。执行该指令时,输入 IN1 的值的位 0 和输入 IN2 的值的位 0 进行“与”运算。结果存储在输出 OUT 的位 0 中。 对指定值的所有其它位都执行相同的逻辑运算。

只有该逻辑运算中的两个位的信号状态均为“1”时,结果位的信号状态才为“1”。 如果该逻辑运算的两个位中有一个位的信号状态为“0”,则对应的结果位将复位。

1.2 OR:“或”运算

可以使用“或”运算指令将输入 IN1 的值和输入 IN2 的值按位进行“或”运算,并在输出 OUT 中查询结果。执行该指令后,将 IN1 输入的值的位 0 和 IN2 输入的值的位 0 进行“或”运算。 结果存储在输出 OUT 的位 0 中。 对指定变量的所有位都执行相同的逻辑运算

只要该逻辑运算中的两个位中至少有一个位的信号状态为“1”,结果位的信号状态就为“1”。 如果该逻辑运算的两个位的信号状态均为“0”,则对应的结果位将复位。

1.3 XOR:“异或”运算

可以使用“异或”运算指令将输入 IN1 的值和输入 IN2 的值按位进行“异或”运算,并在输出 OUT 中查询结果。执行该指令后,将 IN1 输入的值的位 0 和 IN2 输入的值的位 0 进行“异或”运算。 结果存储在输出 OUT 的位 0 中。 对指定值的所有其它位都执行相同的逻辑运算。

当该逻辑运算中的两个位中有一个位的信号状态为“1”时,结果位的信号状态为“1”。 如果该逻辑运算的两个位的信号状态均为“1”或“0”,则对应的结果位将复位。

二、指令应用

2.1 AND:“与”运算

只有该逻辑运算中的两个位的信号状态均为“1”时,结果位的信号状态才为“1”。 如果该逻辑运算的两个位中有一个位的信号状态为“0”,则对应的结果位将复位。

2.2 OR:“或”运算

只要该逻辑运算中的两个位中至少有一个位的信号状态为“1”,结果位的信号状态就为“1”。 如果该逻辑运算的两个位的信号状态均为“0”,则对应的结果位将复位。

2.3 XOR:“异或”运算

当该逻辑运算中的两个位中有一个位的信号状态为“1”时,结果位的信号状态为“1”。 如果该逻辑运算的两个位的信号状态均为“1”或“0”,则对应的结果位将复位。

三、指令参数说明

引脚参数说明

声明: 本作品纯属个人娱乐学习交流,严禁使用其作为商业用途,图片均来至于西门子仿真软件及选型手册、网络,如有版权纠纷请及时告知,谢谢!

西门子PLC STL编程教程(1)——位逻辑指令之 A 、AN、O、ON、X、XN

0和1是二进制运算的基础。在PLC当中,每一个触点或者线圈有且只有两种状态——导通和未导通,这样我们就可以把只有两种状态的触点或线圈看作一个位,当导通时=1,未导通时=0。

位逻辑指令是STL编程中最基础的指令,主要用于表达与处理位与位之间的逻辑关系。本章节主要介绍位逻辑指令中的如下几个指令:

大家都知道,触点分为常开触点和常闭触点,触点与触点之前的位置关系可以分为串联和并联。知道了这些,就会对下面的指令有更清楚的了解。

一、A——与运算指令

(1)指令格式:A<位>

解释:指令A后面接的是一个位,这个位只能是存储区为I、 Q、 M、 L、 D、 T、 C中的某一位。比如 A I0.0、A Q0.0、A M0.0等。

(2)指令作用 :A其实是AND的缩写。A 检查寻址位的状态是否为"1",并将测试结果与 RLO 进行与运算。如A Q0.0就是检测Q0.0状态是否为1,然后与RLO进行与运算。这句话说白了,就是在电路中串联一个常开触点!

(3)应用举例:

A指令检查I0.0是否为1,一旦检查出I0.0=1,则将Q0.0 导通。

换一个方式去理解,就是在电路中串联一个I0.0常开触点,线圈Q0.0导不导通由I0.0决定。其实上面STL指令可以转换成LAD梯形图就非常容易理解,梯形图如下:

再举另外一个例子:

A指令检查I0.1是否为1,A指令检查M0.0是否为1,I0.1和M0.0作“与”运算,如果I0.1=1,M0.0=1,则与运算的结果ROL=1,则Q0.1导通;若两个点中有一个或都等于0,则ROL=0,Q0.1不导通。

换一个方式去理解,就是在电路中串联一个I0.1常开触点,再串联一个M0.0常开触点,线圈Q0.1导不导通由I0.1和M0.0的“与”运算结果决定。将STL语句转换成梯形图,如下:

二、AN——与非运算指令

(1)指令格式:AN<位>

解释:指令AN后面接的是一个位,这个位只能是存储区为I、 Q、 M、 L、 D、 T、 C中的某一位。比如 AN I0.0、AN Q0.0、AN M0.0等。

(2)指令作用 :AN其实是AND NOT的缩写。AN 检查寻址位的状态是否为"0",并将测试结果与 RLO 进行与运算。如AN Q0.0就是检测Q0.0状态是否为0,然后与RLO进行与运算。这句话说白了,就是在电路中串联一个常闭触点!

(3)应用举例:

AN指令检查I0.2是否为0,一旦检查出I0.2=0,则将Q0.2导通。

换一个方式去理解,就是在电路中串联一个I0.2常闭触点,线圈Q0.2导不导通由I0.0决定。上面STL指令转换成梯形图如下:

再举另外一个例子:

AN指令检查I0.3是否为0,AN指令检查M0.1是否为0,I0.3和M0.1作“与”运算,如果I0.3=0,M0.0=0,则与运算的结果ROL=1,则Q0.3导通;若两个点中有一个或都等于1,则ROL=0,Q0.3不导通。

换一个方式去理解,就是在电路中串联一个I0.3常闭触点,再串联一个M0.1常闭触点,线圈Q0.3导不导通由I0.3和M0.1的“与”运算决定。将STL语句转换成梯形图,如下:

三、O——或运算

(1)指令格式:O<位>

解释:指令O后面接的是一个位,这个位只能是存储区为I、 Q、 M、 L、 D、 T、 C中的某一位。比如 O I0.0、O Q0.0、O M0.0等。

(2)指令作用 :O其实是OR的缩写。O 检查寻址位的状态是否为"1",并将测试结果与 RLO 进行或运算。这句话说白了,就是在电路中并联一个常开触点!

(3)应用举例:

O指令检查I0.4是否为1,O指令检查M0.2是否为1,I0.4和M0.2作“或”运算,只要I0.4和M0.2至少一个为1,则或运算的结果ROL=1,则Q0.4导通。

换一个方式去理解,就是在电路中将I0.4常开触点与M0.2常开触点并联。将STL语句转换成梯形图,如下:

四、ON或非运算

(1)指令格式:ON<位>

解释:指令ON后面接的是一个位,这个位只能是存储区为I、 Q、 M、 L、 D、 T、 C中的某一位。比如 ON I0.0、ON Q0.0、ON M0.0等。

(2)指令作用 :ON其实是OR NOT的缩写。ON 检查寻址位的状态是否为"0",并将测试结果与 RLO 进行或运算。这句话说白了,就是在电路中并联一个常闭触点!

(3)应用举例:

ON指令检查I0.5是否为0,ON指令检查M0.3是否为0,I0.5和M0.3作“或”运算,只要I0.5和M0.3至少一个为0,则或运算的结果ROL=1,则Q0.5导通。

换一个方式去理解,就是在电路中将I0.5常闭触点与M0.3常闭触点并联。将STL语句转换成梯形图,如下:

重点补充知识点:O 先与运算后或运算

先看下面的STL语句:

这里要先对A指令进行运算,然后才进行O指令的逻辑运算,这就有点像乘法和加法的运算,先算乘法,再算加法。看下图就能很好的理解了其中的优先级了。

五、X——异或运算

首先,我们说一下异或的意思,见如下表格:

从上面的表格可以看出,异或的意思就是两个位相同时为0,不同时为1,是不是有点小叛逆?下面介绍异或运算的用法:

(1)指令格式:X<位>

解释:指令X后面接的是一个位,这个位只能是存储区为I、 Q、 M、 L、 D、 T、 C中的某一位。比如 X I0.0、X Q0.0、X M0.0等。

(2)指令作用 :X其实是Exclusive OR的缩写。X 检查寻址位的状态是否为"1",并将测试结果与 RLO 进行异或运算。

(3)应用举例:

上面的意思就是将常开触点I0.6与常开触点M0.4进行异或运算。

六、XN——同或运算

首先,我们说一下同或的意思,见如下表格:

从上面的表格可以看出,同或的意思就是两个位相同时为1,不同时为0。下面介绍同或运算的用法:

(1)指令格式:XN<位>

解释:指令XN后面接的是一个位,这个位只能是存储区为I、 Q、 M、 L、 D、 T、 C中的某一位。比如 XN I0.0、XN Q0.0、XN M0.0等。

(2)指令作用 :X其实是Exclusive OR NOT的缩写。XN 检查寻址位的状态是否为"0",并将测试结果与 RLO 进行异或运算。

(3)应用举例:

在西门子PLC的STL编程中,A 、AN、O、ON、X、XN这几个指令是最常用的,所以初学者必须要理解并掌握好。

相关问答

plc异或指令应用?

回答如下:PLC异或指令可以用于逻辑运算,用于比较两个二进制数的每一位,如果相同则结果为0,不同则结果为1。应用场景如下:1.数据传输:异或可以用于数据传...

两个开关控制一个灯用PLC怎样编程?

两个开关控制一个灯,如果要用plc来编程可以说简单,也可以说复杂,说简单就是编程还没开始就结束了!编程复杂就是单一的这个功能用个plc太浪费,高射炮打蚊子,...

plc延时符号哪里找?

PLC(可编程逻辑控制器)中的延时符号通常是根据具体的PLC品牌和编程软件而定的。不同的PLC品牌和软件可能会使用不同的符号或指令来实现延时功能。如果您使用...

三菱plc中x1代表什么?

在三菱PLC中,X1通常代表输入点的地址或编码,X1可以看作是一个输入信号的一种唯一的标识符。基于三菱PLC的硬件平台和软件编程环境,X1所代表的具体输入信号和命...

plc指令表中anl是指?

在PLC指令表中,ANL指的是"与逻辑"操作。ANL是英文单词"AND"的缩写,在PLC中用于进行逻辑与操作。它需要两个输入变量,如果两个输入变量同时为真,...

plc正常运行亮哪几个红灯?

PLC状态灯正常的时候也只亮一、两个灯(即电源灯和run灯),不正常的时候比如SF、BF灯有可能会亮红灯。具体亮什么灯看...plc正常运行亮红灯是不亮的,除非有故...

欧姆龙PLC编程指令与梯形图快速入门的目录?

去京东上搜索这本书,然后下边的商品介绍中就有这本书的目录的。京东上给出的本书的目录如下:第1章PLC编程软件与仿真软件1.1编程软件CX-Programmer1.1...3...

plc中sp指令怎么用?

在PLC中,SP指令用于设置特定的参数值。首先,您需要确定要设置的参数地址。然后,使用SP指令将所需的值加载到该地址中。这可以通过编程软件或HMI界面完成。确保...

编码器怎么编程-Sure-小胖妞的回答-懂得

编码器编程:是将信号(如比特流)或数据进行编制、转换为可用以通讯、传输和存储的信号形式的设备。编码器把角位移或直线位移转换成电信号,前者称为...

西门子plc伺服控制实例?

以下是一个基于西门子PLC的伺服控制实例:假设我们需要使用PLC来控制一个伺服电机,让它以不同的速度运行。1.系统硬件配置我们需要一个增量式编码器(Increm...

 阿富汗一清真寺爆炸致超100人死亡  dna测序仪 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

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

热线

188-0000-0000
专属服务热线

微信

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