PLC梯形图编程注意事项,双线圈输出
直观易懂,便于入门的梯形图虽然简单,但是也有很多问题需要避免,比如双线圈输出问题。 双线圈输出,是PLC编程中最容易出现的问题,该如何避免呢?在讨论这个问题之前,我们先来看看什么是双线圈输出。
图一
如图一所示,这就是一个很典型的双线圈输出。咋一看,这是没毛病的,但这不符合PLC的编程原则,虽然看上去没毛病,但你不能这么用。也就是说,同一个输出,不能被多个条件调用,这个就是双线圈输出,那么,该如何避免呢?最简单的方法就是用中间变量转换
图二
如图二所示,我们采用两个中间变量 M0,M1来做转换,这样就避免了Y0的双线圈输出。
还有一种方法就是使用 SET 线圈输出
图三
如 图三所示,SET是不存在双线圈输出问题的,所以小编建议,新手尽量使用SET 和RST线圈,这样就可以不用考虑双线圈输出问题,待熟悉PLC之后,再采用线圈输出,这样可以避免很多不必要的麻烦。
所以,学习PLC,方法很重要!要循序渐进,不要认为梯形图直观易懂便于入门就很简单!!而直观易懂,便于入门,也不是我们停滞不前的理由,要不断提高,才能进步。
0428 「万泉河」PLC编程:谈虎色变双线圈
0428 【万泉河】PLC编程:谈虎色变双线圈
双线圈问题是PLC行业独有的问题。如果把这个名词讲给没有接触过PLC的IT程序员, 对方一定蒙逼,不知所云。
所以,可以算作是PLC工程师相比IT工程师掌握的为数不多的行业门槛。
很多人引以为傲, 而同时也有很多人提及双线圈就谈虎色变。
对程序中有可能出现双线圈忧心忡忡。
看来是入门学习PLC的时候,被某些培训老师给惊吓着了。 留下了病根。
而有一些品牌如三菱的编程软件,在编译过程中会频繁冒出双线圈警告,无疑在同行中也加深了这种忧虑。
以为是完全不可触及的禁区。
而其实,是个很简单的小问题。
双线圈问题的描述是基于梯形图语言的:即在整个PLC的程序范围内,对同一个Q点的输出线圈()指令只能有一次。 不要超过两次。 如果超过两次,就很有可能程序有BUG。 因为两次线圈()之中的某一次会无效。
线圈指令的本质是赋值。
是对某个开关量的Q点,赋值以计算后的结果1或者0。
即如果程序中有连续两次赋值:
Q:=1;
Q:=0;
则最终执行的结果是0,前面的1的赋值部分,被冲掉了。
所以, 除非你有意这样写程序,否则检查中发现这样的语句,就需要小心一点,有可能有错误。
我们这里讲线圈的本质是赋值,但反过来却未必成立。 赋值指令却未必是线圈(),因为还有(S)/(R)置位/复位指令。即,后两者并不是线圈,当说到双线圈的时候,唯一特指的就是只有()。
(S)/(R)置位/复位指令的本质是条件赋值。
所以,线圈指令的本质其实是无条件赋值。 警惕双线圈其实是要你警惕两次以上的无条件赋值。
比如
Q:=I;
这是赋值。
而如果用SR指令写,其实是IF/THEN的条件判断,以文本表达为:
IF I=TRUE THEN
Q:=TRUE;
ELSE
Q:=FALSE;
END_IF;
上述两种程序写法是完全等效的,效果完全一样。然而如果遇到两次需要写操作的场合,而且两次写操作不能合并, 只能分在两个不同的位置。前一种:
Q:=I1;
…
Q:=I2;
程序是有错误,而且无法解决。
而后一种,则可以各自增加上升沿下降沿的判断,最终分别实现
IF I1=TRUE AND I1_SAVE=FALSE THEN
Q:=TRUE;
IF I1=FALSE AND I1_SAVE= TRUE THEN
Q:=FALSE;
I1_SAVE:=I1;
………….
IF I2=TRUE AND I2_SAVE=FALSE THEN
Q:=TRUE;
IF I2=FALSE AND I2_SAVE= TRUE THEN
Q:=FALSE;
I2_SAVE:=I2;
这样的程序,大致实现了I1和I2分别为TRUE时,都可以点亮Q。 而不必非要把程序逻辑拼在一个段落中, 用OR语句来实现。
注意, 这里的逻辑还是只是大致实现。 是假设I1和I2的变化不会同时发生的情况下。
如果有同时发生, 而且发生时间片段有重叠,那么还需要更复杂的处理。
在我的新书《PLC标准化编程原理与方法》CH5.6.1一节中有详细介绍。
总之,对于双线圈难题的解决方案是:不要用线圈。
S/R不是线圈。
相关问答
plc双线圈输出是什么意思?
PLC双线圈输出是指PLC(可编程逻辑控制器)在控制输出过程中,使用两个线圈来实现开关的控制。其中,一个线圈用于控制开关闭合,另一个线圈用于控制开关断开,通...
PLC梯形图两个线圈怎么并在一起?
回答:三菱plc梯形图输出线圈并联的方法,光标放到一个位置,然后选择一个触伯点,我用的是常开触点,输入触点X0,点确定。光标移动到下一行,重复上面的动作,这次输...
plc双线圈输出怎么解决?
PLC双线圈输出是指在一个输出点上存在两个相互独立的输出信号,此时需要采取一些措施进行解决。常见的解决方法有以下几种:1.使用高速输出模块:高速输出模块...
plc双线圈是什么?
PLC双线圈是一种在PLC(可编程逻辑控制器)中使用的输出模块,它包含两个线圈,可以控制两个不同的输出信号。它通常用于需要同时控制两个设备或执行两个不同的操...
PLC双线圈输出问题?
plc双线圈输出外推解决方法、1)把两段指令合并为一段。2)将双线圈用两个不同的中间继电器替代,然后并联这两个中间继电器常开触点去驱动原来的线圈。plc双...
plc顺序控制编程出现两个一样的线圈怎么办?
顺序控制在不同的状态下,可以有双线圈、多线圈只有当前状态下的线圈才有效顺序控制在不同的状态下,可以有双线圈、多线圈只有当前状态下的线圈才有效
plc当中怎样使两个线圈同时得电?
在PLC中,使两个线圈同时得电有以下几种方法:直接并联:将两个线圈的线圈端子直接并联在一起,当一个线圈得电时,另一个线圈也会得电。使用中间继电器:使...在...
plc单线圈和双线圈的区别?
双线圈是在编程时同一个元件的线圈使用了两次或者多次,就称其为双线圈。当可编程逻辑控制器投入运行后,其工作过程一般分为三个阶段,即输入采样、用户程序执行...
PLC中线圈可不可以串联或并联?
PLC中的定时器必须接右母线,因此不能串联。串联的话,中间的定时器就接不到右母线上了。定时器相应的触点(常开触点或常闭触点)等可以串联。与普通的X,M等触...
PLC线圈怎样接?
plc线圈接法有两种,接法如下表示:1.plc输入端接线方式:磁性感应器,一般蓝色接GND,棕色接输入端的X,光电感应器,3线,一般蓝色接GND,黑色接输入端的X,棕...plc...