西门子PLC置位与复位指令图解
本文介绍西门子s7-200 plc的置位与复位,这两个位操作的指令在我们的程序编写中,作用也是很大,它能完成一些,常规常开常闭触点编程无法完成的程序,可以使我们编写的PLC程序条理更加清晰,步骤更加简单。
它们两个在每次使用时99%的情况下都是成对出现的,只要我们在程序一个地方使用了置位,在程序的另一个地方就会用到复位。所以永远都是你等着我,我等着你,只要你要不来我就不老。置位与复位的大体意思就是,置位是对一个位写1(有输出),复位就是写0(没有输出)。下面介绍使用法。
如图1,是西门子s7200 PLC的,启动,保持,停止的控制电路和程序,我们知道右边的这个程序,它是用单纯的常开和常闭的位操作指令编写的,可以完成自锁的功能。大家不太明白的再看一下上一节。但除了以上介绍的,这个自锁功能还能用我们今天讲的置位和复位操作来完成。程序如下。
图2,左边就是使用置位复位编写的PLC程序,感觉是不是比以前编写的程序,清晰简单多了,右边是置位复位操作指令的每一个部分的分解说明,已经写的很明白了就不用讲了。如果还是没看明白就接着往下看,看一看PLC置位复位程序的执行过程就明白了。
如图3,这个是PLC置位复位程序的置位执行步骤:
1,外部常开按钮没有按下时I0.0没有接通,Q0.1置位线圈就没有输出。
2,外部常开按钮按下时I0.0接通,Q0.1置位线圈就有了输出。
3,松开外部常开按钮时I0.0断开没有接通,虽然I0.0已经断开没有了接通,但Q0.1置位线圈依然还是有输出,实现了自锁功能。直到有复位信号时它才会没有输出,这就是置位操作指令的特点。
简单不。接下来看复位的操作。
如图4,这个是PLC置位复位程序的复位执行步骤:
4,外部常闭按钮没有按下时I0.5没有接通,Q0.1复位线圈就没有输出。
5,当外部常闭按钮按下时I0.5接通,Q0.1复位线圈就有了输出。它就会复位置位线圈Q0.1,这样Q0.1就没有了输出。
6,即使外部常闭按钮松开I0.5没有了接通,复位线圈Q0.1依然被固定在复位状态。Q0.1就没有了输出,实现了停止功能。
也很简单。下面大家再来看一下图5。
第2章 PLC程序中的置复位精讲
一名优秀的PLC编程工程师从用好置复位开始!
2.1 置复位指令
2.1.1 置位和复位
如图2.1所示,a为复位输出表示方法,b为置位输出表示方法。通常将a叫做复位,b叫做复位。
图2.1 置复位
如图2.1所示程序段3编写了一个置位指令,当按下(系统开启I0.0)按钮时,置位(正转继电器Q0.0)的线圈。松开(系统开启I0.0)按钮时,(正转继电器Q0.0)的线圈依然接通。置位的作用就是,当置位条件接通时,置位一个线圈或者信号,当置位条件断开时,已经被置位的线圈或者信号不会断开,保持接通状态。如何解除这种保持状态,一般情况下需要对应的复位信号来解除。如图2.1中程序段4,当按下(停止按钮I0.3)时,复位(正转继电器Q0.0)的线圈。对比第1章讲到的起保停程序,采用置复位来做,程序会显得简洁易懂些。
图2.2 置复位程序1
2.1.2 置复位一体指令
如图2.3所示,有2种置复位一体的指令。程序段5中的指令为复位优先的指令,程序段6中的指令为置位优先的指令。怎么就出现优先级别了呢?就是当复位条件和置位条件同时接通时,哪个优先执行,谁优先执行谁说了算。相当于碰到了千古遗留难题:你妈和你媳妇同时掉河里,你先救谁的问题?编程的时候必须给出答案了。
程序段5和程序段6都实现了启动和停止的功能。一个优先停止,一个优先启动。按照正常的需求来讲,当一个产线和设备启动条件和停止条件都同时发生时,应该是停止优先。保证设备或者人员安全。那么程序段5是正常应该做的程序。但是问题又来了,图2.2中没有明显的置复位标志,同时发生的时候哪个优先呢?大家可以亲自测试一下,结果会发现是复位优先,因此图2.2中的程序跟图2.3中的程序段5实现的效果和功能是一模一样的。程序段5的编程方式更为简洁和方便一些。
图2.3 置复位一体指令
实战总结
如图2.3所示,程序段5中的指令适合于一些条件的编写,比如启动条件,电机运转条件,电磁阀开启条件等一些启动优先的程序的制作。
如图2.3所示,程序段6中的指令适合于停止条件或者安全条件的编写,比如急停故障,限位故障,安全联锁等一些停止优先的程序的制作。
如图2.4所示,程序段7表达的意思是当按下(系统开启I0.0)按钮时,置位从Q0.0开始的连续的n个数量的线圈,本程序中n为1。程序段8表达的意思是当按下(停止按钮I0.3)按钮时,复位从Q0.0开始的连续的n个数量的线圈,本程序中n为1。通过前边的程序可见只有n>=2才有必要使用这两个指令。
实战总结
一般情况下置位多个位的指令不常用,复位多个位的指令用于复位连续的一些点位。在实际操作过程中,偶尔碰到了会用。大多是情况下都是用上边的4个置复位指令多一些,因为实际编程中区分的较为细化,同时编程时不会规划的那么详细。只有在优化程序之后,感觉需要用到同时置位多个位或者同时复位多个位的时候才会用到。这种多个位的置复位操作指令不易解读。比如你连续置位了5个位,那5个位最后都干啥用了,还得返回去找,还不如一个个来。
图2.4置复位域
2.2 编程实战
2.2.1 多个置位线圈
在编程过程中,我们会遇到多个事件都能导致一个事件的发生,就需要多个条件给同一个线圈置位。如图2.5所示,通过在不同的程序段给同一个线圈多次置位(为了方便看程序,做到了一个程序段)。这种编程方式是不合理的,很容易导致线圈多次置位,引起程序混乱。一般都是采用图2.6所示的编程方式来解决这个问题。通过三个不同的条件来给同一个线圈置位。
图2.5 多次置位同一线圈
图2.6 多个条件置位同一线圈
2.2.1 多个复位线圈
在编程过程中,我们会遇到多个事件都需要停止一个事件的发生,就需要多个条件给同一个线圈复位。相信大家也猜出来了,应该按照图2.7所示的编写。
但是咱们编程人员又不是神仙,往往不知道需要复位多少次,也不知道啥时候就又要复位某一个线圈了。所以大家都会按照图2.8中所示的那样编写,碰到需要复位的就来一次。这样写也没啥大的问题,只要自己能分清就行。本人建议,等程序编写完了,将所有的复位线圈的条件再集合起来按照图2.7那样编写,等调试的时候出现了不该复位的时候复位了,容易查看程序,节约调试时间。如果非要按照图2.8那样编写也无可厚非,其实我偶尔也会按照图8那样编写程序。
图2.7 多个条件复位同一线圈
图2.8 多个条件多次复位同一线圈
2.3 置复位的问题思考
2.3.1 程序中为什么使用置复位
通过咱们上边的讲解大家也看到了置复位做程序,很简洁方便,如同一把快刀可以斩乱麻。置位信号可以保持一个很长的时间,只要没有复位,线圈就会保持。这是置复位的优点,但是一旦置复位多了,很多人就蒙圈了!原因是为啥?因为很多保持的条件或者是保持的线圈,在庞大的程序中,不知道何时该复位,何时又该置位。复位早了,设备不转了,复位晚了,给其他设备干仗了。所以说锻炼自己使用置复位的能力,掌控一个置复位到逐渐增多做起,就像韩信带兵一样,多多益善。
有的人做程序通篇都是置复位,如果你不练习,根本无法解读别人的程序。熟练掌握大篇幅的置复位对以后做数字量逻辑编程会大有帮助。
2.3.2 如何做好置复位程序
原则1:做到及时的卸磨杀驴,就是置位条件保持到使用完毕就及时复位。
原则2:调试中出现问题时,细化分析现场工艺需求,调整置复位的时间点,或者变更置复位条件。
原则3:掌握常用的置复位技巧,与现场工艺相匹配的做法。
原则4:不要因为害怕而不用,很多东西都是越用越熟练,不能一口吃个胖子,但是你得练。
千里之行始于足下!目标再好,需要先走起来再说!
相关问答
nx系列plc如何复位输出点?
要复位NX系列PLC的输出点,可以通过以下步骤进行操作:首先,进入PLC的编程软件,打开相应的程序。然后,找到需要复位的输出点所对应的线圈或位址,并将其置为...
三菱plc手动怎样复位多个指定点?
要复位多个指定点的三菱PLC,可以按照以下步骤操作:1.打开工程软件,选择相应的PLC型号和连接方式。2.进入程序编辑界面,找到需要复位的指定点,标记出来。...
PLC上的复位是什么?如何使用?
机身上的复位?有的是清除存储器的数据(清零),但不会删除程序。有的会删除程序。具体操作:不同的品牌、型号不一样,要看说明。机身上的复位?有的是清除存储器...
plc按钮复位程序的编写?
就是写一段程序,把所有的辅助继电器,计数器,和输出点全部复位,如果有电机的话,也要让电机回原点。一般是分步复位,在保证下一步动作是安全的情况下,才可...
plc的置位复位是什么意思?
PLC(可编程逻辑控制器)的置位和复位是为了控制程序中需要重复使用的变量或状态进行初始化的方法。置位操作将变量或状态从0变为1,表示已经被激活了。而复位操...
西门子1200怎么复位db块?
要复位西门子1200的DB块,需要在STEP7工程中找到对应的DB块,在DB块的属性中将"首次始终"和"块复位"两个选项打勾,再将DB块上传到PLC中执行即可...
plc中的复位置位指令?
三菱系统的复位指令Rst,置位Set。三菱系统的复位指令Rst,置位Set。
plc到时间停了如何复位?
你好,PLC停止运行后,可以通过以下步骤进行复位:1.检查PLC的电源是否正常,确认电源正常后,将其打开。2.检查PLC的程序是否有误,如果有误,需要修改程序...
plc的上升沿和下降沿怎么用?
PLC上升沿和下降沿分别用于检测输入信号的上升和下降,PLC通常使用上升沿信号来触发内部的存储器(RST)或内存(ST),它们通常用于检测开关在开闭时的信号变化...
plc中置位和复位命令怎么用?
在PLC编程中,可以使用置位(set)命令和复位(reset)命令来控制输出信号的状态。使用置位命令可以使输出信号处于打开状态,而使用复位命令则可以使输出信号处...