PLC可以多线圈输出吗?和置复位指令混用会有什么问题?
原创不易,请勿抄袭!
很多刚接触PLC的新人们都会对线圈的直接输出指令和置复位指令感到疑问,不知道什么时候应该用什么指令,最后编出来的程序既有多个线圈,又有置复位,而且一些PLC还不会因此报错,但运行结果却是差之毫厘,谬以千里。
1 输出指令
输出线圈
满足列条件之一时,线圈Q4.0的状态为“1”
1输入端I0.0和I0.1的信号状态同时为“1”时
2或输入端I0.2的信号状态为“0”时。
满足下列条件之一时,输出端Q4.1的信号状态将是“1”
1 输入端I0.0,I0.1和I0.3的信号状态同时为“1”时
2 输入端I0.2的信号状态为“0”、输入端I0.3的信号状态为“1”时
2 置复位指令
2 S为 SET指令
SET指令称为置位指令。其功能是:驱动线圈,使其具有自锁功能,维持接通状态。在图2中,当动合触点I0.0闭合时,执行SET指令,使线圈Q0.1接通。在断开后,Q0.1线圈继续保持接通状态,要使Q0.1线圈失电,则必须使用复位指令R。
置位指令的操作元件为输出继电器Q、辅助继电器M和步进继电器S。
3 R为RST指令
RST指令称为复位指令。其功能是使线圈复位。在图2中,当动合触点I0.1断开时,执行R指令,使Q0.1线圈复位。在I0.1接通后,Q0.1线圈继续保持断开状态。要使Q0.1线圈得电,则必须使用置位指令S
复位指令的操作元件为输出继电器Q、辅助继电器M、步进继电器S等等。
那么如果将两者混合在一起会是什么情况呢?
()是线圈输出指令,S是置位指令,R是复位指令
程序第一行叫线圈输出指令,第二行叫置位指令,第三行叫复位指令。
都是用来做输出状态的,他们之间的区别就在于:
1输出线圈是对目标位的最终结果的申明,不是1就是0,既然是最终结果,一个程序里理论来说只可以有一个输出线圈,为什么说理论来说,因为有一种情况可以多线圈,那就是如果多个线圈分别应用在不同的子程序里,而一个扫描周期只能检测到一个线圈的话也是可以的。
而一旦出现双线圈输出,在编辑的时候PLC也不会报错,但只有最后一个线圈起作用,前面的无论是否满足都没有任何作用。
三个相同的线圈输出指令,前两个结果为1,最后一个结果为0,最终结果为0
三个相同的线圈输出指令,前两个结果为0,最后一个结果为1,最终结果为1
但如果需要这种多处控制输出的话怎么办?
两种办法:一每个控制点使用不同的中间继电器,然后中间继电器再控制线圈输出。
M0.0,M0.1,M0.2代替三种状态,最后再输出到Q0.0上,就可避免双线圈的问题。
二是使用置复位。
置位指令是对目标位状态的更改,这可以改,那也可以改,条件满足就改,条件不满足就保持原状态,所以一个程序里可以多处更改,而结果以多次更改的结果为主。
共有两个置位指令,两个复位指令。
2 输出线圈是一个单一指令,条件满足就是1,不满足就是0。
置位指令能将0变为1,不能将1变为0。所以置位指令必须和复位指令配合使用才是一个完整的程序。
3 这两种最好不要出现在一个扫描周期中,虽然可以,但是建议新手不要这么做,因为情况比较复杂,如果出现了这种情况就要看哪个命令在程序的尾部。
如果输出线圈在程序段的后面,则以输出线圈的结果为主,不考虑前面的置复位指令。
前面置位了,后面的输出线圈为0,结果为0
前面复位了,后面的输出线圈为1,结果为1
如果置复位命令在程序段的后面,需要看这个指令是否满足条件并且执行,不执行的话以上一个指令为主,执行的话以当前指令为主。
以最后有效的指令为准
所以新手朋友要多加练习,才能熟练掌握这几个指令的用法。
(如果喜欢这篇文章,请点赞并关注,以便优秀文章在第一时间受到推送)
PLC梯形图编程注意事项,双线圈输出
直观易懂,便于入门的梯形图虽然简单,但是也有很多问题需要避免,比如双线圈输出问题。 双线圈输出,是PLC编程中最容易出现的问题,该如何避免呢?在讨论这个问题之前,我们先来看看什么是双线圈输出。
图一
如图一所示,这就是一个很典型的双线圈输出。咋一看,这是没毛病的,但这不符合PLC的编程原则,虽然看上去没毛病,但你不能这么用。也就是说,同一个输出,不能被多个条件调用,这个就是双线圈输出,那么,该如何避免呢?最简单的方法就是用中间变量转换
图二
如图二所示,我们采用两个中间变量 M0,M1来做转换,这样就避免了Y0的双线圈输出。
还有一种方法就是使用 SET 线圈输出
图三
如 图三所示,SET是不存在双线圈输出问题的,所以小编建议,新手尽量使用SET 和RST线圈,这样就可以不用考虑双线圈输出问题,待熟悉PLC之后,再采用线圈输出,这样可以避免很多不必要的麻烦。
所以,学习PLC,方法很重要!要循序渐进,不要认为梯形图直观易懂便于入门就很简单!!而直观易懂,便于入门,也不是我们停滞不前的理由,要不断提高,才能进步。
相关问答
plc怎么实现两个信号控制一个输出?
1、PLC可以通过逻辑运算和控制输出模块的状态来实现两个信号控制一个输出。2、例如,可以将两个输入信号连接到逻辑运算器中,采用与门、或门、异或门等方式对...
两台plc怎么共享输入输出?
两个方法:1.用第一台PLC的输出点,硬接线连接到第二台PLC的输入点,第二台PLC根据内部程序控制对应的输出点;2.两台PLC通过各种总线连接(基于485总线、基...
PLC中如何用一个开关的通断两种状态控制2个输出?
用这个开关的常闭触点和常开触点撒(0.00)(1.00)|-----||---------O-----|(0.00)(2.00)|-----|/|---------O-----|当...
西门子plc双线圈输出怎么解决?
plc双线圈是指程序里同一个地址的线圈使用了2次及2次以上。因为PLC是采用扫描工作制。如果使用了双线圈,那么PLC将以最后出现的线圈的输出为准。这就造成了,前...
plc交替输出指令?
用X0作为交替输出指令的执行条件,在左母线右侧输入LDX0。在X0的触点后双击鼠标,在梯形图输入窗口中输入ALTPY0。这里使用的脉冲执行指令,含义为当X0接通一...
三菱PLC怎么用一个输入点控制两个输出点?
用单按钮启停方法(很多方法,可上网查)控制Y1,取反后给Y2。可编程逻辑控制器,它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、...
Microwin200plc如何强制输出?
要强制输出Microwin200plc,首先需要在编程软件中找到对应的输出位,然后修改其状态为强制输出状态。在PLC程序中,可以使用强制输出指令来实现这一功能,具体操...
西门子plc不能两个相同的q输出吗?两个相同的m呢?
两个相同的Q输出和两个相同的M输出都是可以的,但是因为出现相同的输出所以会出现双线圈输出问题。双线圈输出不是错误,只是提醒程序员,输出状态以最后一次赋值...
怎样让Plc一个输入点控制多个输出点呢?急?
用单按钮启停方法(很多方法,可上网查)控制Y1,取反后给Y2。可编程逻辑控制器,它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计...
plc控制两台电机运行方法?
1、可以通过模拟量控制,一般采用0~10V信号控制,几套伺服就配几个输出,脉冲控制。你可以选用晶体管输出的PLC,通过发不同的脉冲数来控制伺服系统的速度;2、可...