S7-1200 PLC的逻辑运算指令详解!
- 格式:pdf
- 大小:395.15 KB
- 文档页数:6
基本指令88.1 位逻辑运算8.1.1 位逻辑指令使用 LAD 和 FBD 处理布尔逻辑非常高效。
SCL不但非常适合处理复杂的数学计算和项目控制结构,而且也可以使用 SCL 处理布尔逻辑。
LAD 触点表格 8- 1常开触点和常闭触点LAD SCL说明IF in THENStatement; ELSEStatement; END_IF;常开触点和常闭触点:可将触点相互连接并创建用户自己的组合逻辑。
如果用户指定的输入位使用存储器标识符 I (输入)或 Q (输出),则从过程映像寄存器中读取位值。
控制过程中的物理触点信号会连接到 PLC 上的 I 端子。
CPU 扫描已连接的输入信号并持续更新过程映像输入寄存器中的相应状态值。
通过在 I 偏移量后追加“:P”,可执行立即读取物理输入(例如: “%I3.4:P”)。
对于立即读取,直接从物理输入读取位数据值,而非从过程映像中读取。
立即读取不会更新过程映像。
IF NOT (in) THEN Statement; ELSEStatement; END_IF;基本指令8.1 位逻辑运算表格 8- 2 参数的数据类型参数数据类型说明IN Bool 分配位●在赋的位值为 1 时,常开触点将闭合 (ON)。
●在赋的位值为 0 时,常闭触点将闭合 (ON)。
●以串联方式连接的触点创建 AND 逻辑程序段。
●以并联方式连接的触点创建 OR 逻辑程序段。
FBD、AND、OR 和 XOR 功能框在 FBD 编程中,LAD 触点程序段变为与 (&)、或 (>=1) 和异或 (x)功能框程序段,可在其中为功能框输入和输出指定位值。
也可以连接到其它逻辑框并创建用户自己的逻辑组合。
在程序段中放置功能框后,可从“收藏夹”(Favorites)工具栏或指令树中拖动“插入输入”(Insert input)工具,然后将其放置在功能框的输入侧以添加更多输入。
也可以右键单击功能框输入连接器并选择“插入输入”(Insert input)。
西门子S7-1200 PLC的指令系统分为基本指令、扩展指令、工艺指令、通信指令等等,而其中的基本指令是我们学习S7-1200 PLC 必须要学习和掌握的指令,包括位逻辑运算、定时器、计数器、比较操作、数学函数等10部分组成。
这篇文章主要是介绍一下S7-1200的位逻辑指令,这也是我们在学习PLC编程时最先接触到的指令,最基本的指令。
位逻辑运算指令是对二进制位进行操作指令,数据类型是BOOL型,这其中又包括了触点指令与赋值指令、置位与复位指令、沿脉冲检测指令这三个部分。
我们打开基本指令中的位逻辑运算文件夹,就可以看到如下这些指令。
从以上这些指令中,我们可以对比一下S7-200/200 SMART PLC,会发现有部分指令有所不同,比如说赋值取反、SET_BF、RESET_BF、(P)、(N)、P_TRIG、N_TRIG、R_TRIG、F_TRIG,这些都是S7-1200 PLC新增的指令,我们之后也会着重介绍新增的指令。
对于这些位逻辑运算指令,我们会分三部分来讲,这篇文章是先介绍触点指令与赋值指令哦。
触点与赋值指令包括常开触点、常闭触点、取反指令、赋值和赋值取反这5个指令。
常开常闭触点类似于继电控制电路中按钮的常开常闭触点。
因为PLC的输入点需要接按钮、开关等元器件,按钮开关等有常开NO和常闭NC的,而程序中又又常开触点和常闭触点,那么外部电路的状态和内部触点常开/常闭之间的关系是怎么样的呢?我们一起看一下下图。
对于常开常闭触点,我们在使用的时候可以单个触点使用,也可以多个触点进行逻辑“与”、“或”、“非”等组合式使用。
当多个触点串联连接在一起使用时,多个触点之间的运算就是逻辑与运算。
只有所有触点的状态都为1时,输出结果才会为1。
当多个触点并联链接在一起时,多个触点之间的运算就是逻辑或运算。
只要参与运算的触点中有任意一个状态为1,输出结果就为1。
逻辑非运算是对前面的逻辑运算结果进行取反,比如当前面的逻辑运算结果为1,执行逻辑非运算之后结果变为0。
S71200-1500指令说明和举例-赋值取反
--(/)--:赋值取反(S7-1200,S7-1500)
--(/)--:赋值取反
说明
使用“赋值取反”指令,可将逻辑运算的结果(RLO)进行取反,然后将其赋值给指定
操作数。
线圈输入的RLO为“1”时,复位操作数。
线圈输入的RLO为“0”时,操作数
的信号状态置位为“1”。
参数
下表列出了“赋值取反”指令的参数:
参数声明数据类型存储区说明
I、Q、M、D、要赋值给RLO的操作
OutputBOOL
L数。
示例
以下示例说明了该指令的工作原理:
当满足以下任一条件时,可对操作数“TagOut_1”进行复位。
操作数“TagIn_1”和“TagIn_2”的信号状态为“1”。
操作数“TagIn_3”的信号状态为“0”。
有关以上示例中编程代码的更多信息,请参见“SampleLibraryforInstructions”。
参见
有效数据类型概述
存储区(S7-1500)
LAD编程示例
有关LAD的基本信息
存储区(S7-1200)
-1-。
S7-1200基本指令的应用案例随着工业自动化技术的不断发展,PLC(可编程逻辑控制器)作为工业控制领域中的重要设备,不断得到广泛的应用。
其中,西门子S7-1200系列PLC以其性能稳定、可靠性高等特点,成为了众多工业控制系统的首选。
在S7-1200系列PLC中,基本指令是实现其各项功能的基础,本文将结合具体案例,介绍S7-1200基本指令的应用方法及技巧。
一、S7-1200基本指令的概述S7-1200系列PLC的基本指令包括了逻辑运算、数值运算、移位、比较、计数和定时器等基本功能。
这些指令通过编程的方式,实现了PLC对工业设备的精确控制,具有非常重要的实际意义。
二、逻辑运算指令的应用1. 与门指令与门指令用于将多个输入信号进行与运算,并输出结果。
在工业控制中,可以利用与门指令实现多个条件的同时满足时,触发某项操作的逻辑控制。
2. 或门指令或门指令则是将多个输入信号进行或运算,并输出结果。
在设备的控制中,或门指令可以用于多种状态下的切换操作,提高了设备的灵活性。
三、数值运算指令的应用1. 加法指令加法指令可实现两个操作数的相加,广泛应用于工业设备中的加工、输送、包装等环节的位置控制和计数操作。
2. 减法指令减法指令同样是实现了两个操作数的相减操作,常用于工业生产中的计数、调整等方面。
四、移位指令的应用1. 左移指令左移指令主要用于对数据进行左移位操作,可应用于数值的扩大、倍增等场景,提高了生产效率。
2. 右移指令右移指令则是对数据进行右移位操作,在某些液位控制、料仓排料等方面具有重要作用。
五、比较指令的应用比较指令可用于比较两个操作数的大小关系,在工业控制中常用于检测传感器信号、设定阈值等环节。
六、计数和定时器指令的应用1. 计数器指令在工业生产中,计数器指令常用于对生产过程中的成品数量、加工次数等进行统计和控制。
2. 定时器指令定时器指令则是用于对设备的时间控制,如配料时间、加工时间、清洗时间等,实现对生产过程的准确控制。
三相电机控制原理位逻辑指令“或”逻辑(并联)“与”逻辑(串联)常开触点(1)当操作数的信号状态为1时,常开触点闭合;(2)当操作数的信号状态为0时,常开触点断开。
常闭触点(1)当操作数的信号状态为0时,常开触点闭合;(2)当操作数的信号状态为1时,常开触点断开。
线圈(1)当逻辑运算结果(RLO)的信号状态为1时,则操作数的信号状态置位为1;(2)当逻辑运算结果(RLO)的信号状态为0时,则操作数的信号状态置位为0。
位逻辑指令置位输出仅当逻辑运算结果(RLO)为1时,才执行该指令。
如果信号流通过线圈(RLO =“1”),则指定的操作数置位为“1”。
如果线圈输入的 RLO 为“0”(没有信号流过线圈),则指定操作数的信号状态将保持不变。
复位输出仅当线圈输入的逻辑运算结果 (RLO) 为“1”时,才执行该指令。
如果信号流通过线圈(RLO =“1”),则指定的操作数复位为“0”。
如果线圈输入的 RLO 为“0”(没有信号流过线圈),则指定操作数的信号状态将保持不变。
位逻辑指令置位/复位触发器(1)如果输入 S 的信号状态为“1”且输入 R1 的信号状态为“0”,则将指定的操作数置位为“1”;(2)如果输入 S 的信号状态为“0”且输入 R1 的信号状态为“1”,则将指定的操作数复位为“0”;(3)如果输入 S 的信号状态为“1”且输入 R1 的信号状态为“1”,则将指定的操作数复位为“0”(输入 R1 的优先级高于输入 S);(4)如果两个输入 S 和 R1 的信号状态都为“0”,则不会执行该指令。
因此操作数的信号状态保持不变。
位逻辑指令复位/置位触发器(1)如果输入 R 的信号状态为“1”,且输入 S1 的信号状态为“0”,则指定的操作数将复位为“0”;(2)如果输入 R 的信号状态为“0”且输入 S1 的信号状态为“1”,则将指定的操作数置位为“1”;(3)当输入 R 和 S1 的信号状态均为“1”时,将指定操作数的信号状态置位为“1”(输入 S1 的优先级高于输入 R);(4)如果两个输入 R 和 S1 的信号状态都为“0”,则不会执行该指令。
西门子PLC S7-1200编程与操作模块五基本指令任务一位逻辑指令【学习目标】1.了解与掌握位逻辑指令的用法。
2.熟练运用指令完成练习。
【相关知识】一、基本位逻辑指令点击“常用指令栏”—“常开,常闭触点”,或者在“基本指令”—位逻辑运算—“常开,常闭触点”添加。
可在“基本指令”—位逻辑运算—“取反”添加。
可在“基本指令”—位逻辑运算—“赋值,赋值取反”添加。
练习(一)、结合上图,完成上面的程序,可以得到如下的功能:当开关S1动作而S2不动作时,在三种情况下指示灯都亮。
注意 !根据它们是用在硬件回路中还是作为软件中的符号,“常开触点”和“常闭触点”有不同的含义。
二、置位复位指令可在“基本指令”—位逻辑运算—“置位输出,复位输出”添加。
可在“基本指令”—位逻辑运算—“置位位域,复位位域”添加。
可在“基本指令”—位逻辑运算—“置位/复位触发器,复位/置位触发器”添加。
练习三、上升沿/下降沿指令可在“基本指令”—位逻辑运算—“扫描操作数的信号上升沿,扫描操作数的信号下降沿”添加。
可在“基本指令”—位逻辑运算—“在信号上升沿置位操作数,在信号下降沿置位操作数”添加。
可在“基本指令”—位逻辑运算—“扫描RLO的信号上升沿,扫描RLO的信号下降沿”添加。
任务二数字指令【学习目标】1.了解基本数字的数据类型格式、相互间转换规律等。
、2.熟练运用数字指令完成实操练习。
【相关知识】一、基本数字数据类型二进制/数值处理事实上,我们可以很容易地识别真正的逻辑控制系统,因为它们专用于处理二进制数据。
当今控制系统使用的计算机的性能,以及在数据处理、质量控制领域和其他一些行业应用的飞速发展,都极大地增加了使用PLC 进行数值处理的重要性。
可以在所有开环控制系统的应用领域内找到数值过程变量的应用实例——例如在用于过程操作和监视的连接设备中,或者在现场设备的控制应用中。
操作和监视过程监视的目的是快速、准确、清晰地为操作员提供关于工作机器或系统的最新信息,同时还可允许操作员干涉、控制和影响生产过程。
S7-1200 PLC的逻辑运算指令详解!
在S7-1200 PLC中的逻辑运算指令包括了逻辑与运算、逻辑或运算、逻辑异或运算、逻辑取反运算、编码与译码指令、选择指令、多路复用与多路分用指令。
下面我们分别对这些指令进行解释说明。
1、逻辑运算指令
逻辑与运算、逻辑或运算、逻辑异或运算、逻辑取反运算都是我们常见的逻辑运算指令,如果又用过S7-200/200 SMART PLC的同学会有了解,对于逻辑运算指令,其实基本PLC都是支持的,功能是也是一样的。
逻辑运算指令支持的数据类型是BYTE/WORD/DWORD这三种,这几个指令使用的还是比较多的,大家还是需要掌握一下。
逻辑与指令AND:当参与运算的所有数中对应的位是1时,那么结果就为1。
逻辑或指令OR:当参与运算的所有数中对应的位有1时,那么结果为1。
逻辑异或指令XOR:当参与运算的所有数中对应的位相同时,那么结果为0;不同时则为1。
逻辑取反指令INV:对输入的数按二进制位进行取反,也就是0变成1,1变成0。
换成二进制去看。
2、编码指令ENCO和译码指令DECO
编码指令选择输入的最低有效位,并将该位号写入到输出中去。
(注意:输入变量的数据类型为字符串,输出变量的数据类型是INT类型。
)
译码指令首先读取输入的值,并将输出值中的位号与读取值对应的那个位置,输出值的其它位以零进行填充
(注意:输入变量的数据类型是UINT,输出变量的数据类型可以是
BYTE/WORD/DWORD的数据类型。
)
可能以这样的文字描述比较难理解,看一下下面的程序及对应的解释你就清楚了。
上图的程序中ENCO的输入 16#0B70,二进制数是
0000_1011_0111_0000,最低有效位也就是为1的最低位是bit4位,所以输出MW14存储的就是4。
DECO的输入是6,就将输出的bit6位设置为1,其他位设置为0,所以输出MW18的二进制数是0000_0000_0100_0000。
3、选择SEL、多路复用MUX、和多路分用DEMUX
选择指令SEL是根据输入G的情况,从而选择输入IN0和输入IN1中的一个,把它的内容复制到输出OUT中。
也就是说如果G的状态是0,那么就把IN0的值移动到OUT中去,如果G的状态是1,那么就把IN1的值移动到OUT中去。
其实这个指令可以代替一些场合的移动操作指令,也就是传送指令的使用。
多路复用指令MUX是以输入K中的值作为输入值IN端的编号,比如K的值等于1,就表示把IN1的值复制到输出OUT中去。
对于这个指令,我们是可以增加它的输入管脚的,最多可以增加到多少呢?
最多是可以增加到32个管脚。
如果K中的值不能表示输入管脚的编号的情况下,那么就把ELSE的值输出到OUT中去。
多路分用指令DEMUX的含义和多路复用指令MUX是有一定的相似的,DEMUX指令是以输入K的值作为输出OUT的编号,跟MUX一样,这个指令也是可以增加管脚的,但是增加的是输出的管脚。
如果K的值等于1,那么就把输入IN的值复制到OUT1中去,K的值等于2,就把输入IN的值复制到OUT2中去。
以上就是S7-1200 PLC的逻辑运算指令,指令中的选择SEL、多路复用MUX、和多路分用DEMUX这三个指令也是S7-200/200 SMART PLC没有的,如果是熟悉S7-200/200 SMART PLC的同学,可以重点学习这几个指令的使用即可啦~。