Mitsubishi 三菱FXPLC入门之常用基本编程环节

发布时间 2023-08-07 11:00:07作者: 一杯清酒邀明月

  学习PLC,主要学习的就是它的编程,一说到编程我就头皮发麻,总觉得我学了编程后离脱发、秃头也就不远了。在学习PLC之前,我以为编程都是打代码,后来才发现,PLC的编程基本是梯形图,这让我大松一口气,好歹不用面对那些一串一串的英文字符,谢天谢地。

  犹记得高中的语文考试,阅读理解、诗词鉴赏的答题模式就是套用格式,反正不管是什么文章诗词,最后以一句“表达了作者@#$%*+之情”结尾就对了。还有数理,不会做的题,先给个公式总是没错的,我可真是个小机灵鬼。类似的,我发现PLC的编程也可以套用模式的,这些可以套用的基本编程环节就是我这次要分享的内容。

  那么,常用的基本编程环节有哪些呢?欲知后事如何,请听下回分解,啊呸,请听下文分解。

一、点动与自锁

  从学习PLC开始到现在,我发现,凡是要用到简单例子的地方,几乎都是用电机的起保停电路示例,这是怎么做到全国统一的?在《三菱FX PLC编程与应用入门》课程中,自锁的编程环节,其实也是起保停电路的梯形图,如上图所示。

  点动控制梯形图是最简单的,点一下就动一下,点多久,动多久,简直就是无脑操作,例如门铃的控制。而自锁就比较常见了,连我这种PLC小白都知道,自锁控制梯形图几乎在所有的程序中都有出现。

  自锁,又称自保持,X1触点闭合,Y1线圈启动,Y1的常开触点同时闭合,这时候,即使X1断开,Y0线圈通过Y0的触点还能持续被接通。这么一理解,如果我们把门铃的点动控制改为自锁控制,按下门铃不知道会不会被打。

  这个自锁控制虽然不难,但是我们什么时候才会用到它,这才是关键,除了电机的起保停电路,大家还能联想到那些相关的应用呢?欢迎大家留言评论告诉我。

二、起动优先和停止优先

  停止优先其实就是上文的自锁,因为不管X1触点闭合与否,只要按下停止按钮X2,X2断开,Y1就必须输入为0。这就像是开车,不管你油门加到多大,只要我离合是踩下的,你的车都不会加速,这个X2就像是离合,而X1是油门。

  与此作为类比,起动优先的意思就是,不管停止按钮X2通断与否,只要X1的闭合的,Y1输出就为1,如上图所示,只有X1是断开的情况下,按下停止按钮X2,Y1输出才为0。

  根据我的直觉,我觉得起动优先这种控制应该很少出现才对,因为它是真的好丑,不符合我对梯形图的审美(其实是它,实在是不好理解)。

三、联锁与互锁

1、联锁

  联锁,说白了就是串联,例如多个串联开关是控制灯泡的亮灭,只有所有开关都闭合,灯泡才能亮,只要有一个开关是断开的,灯泡都会灭,这个其实就是我第在第一篇文章“数字电路基础”中提到的“与”逻辑电路。

  PLC的联锁控制就是这个道理,同一个输出,多个输入触点谁都想分一杯羹,为了避免打架,不妨大家平起平坐,谁都有对输出的100%决定权,如图中X1、X2、X3同时控制Y0。

2、互锁

  所谓互锁,是指在多个支路中,不管是输入还是输出,只要参与互锁,那么它们之间,只要有一个支路闭合构成通路,其他的支路都不能接通。

  如上图所示,假如Y0与Y1之间要实现互锁,那就把各自的常闭触点放到对方的支路构成联锁,当Y0输出为1,此时Y0的常闭触点断开,Y1所在支路不能连通。或者Y2不甘寂寞,也要加入互锁的队伍,此时Y0、Y1、Y2分别把各自的常闭触点放到它方的支路构成联锁,当Y0、Y1、Y2中任一个输出为1,其他两路都不能连通。显然,参与互锁的各方不是你死就是我亡,所谓一山不容二虎,它们不可能同时被接通。

  根据互锁控制,我们可以举一反三:我不管你是不是互锁,反正我想锁死谁,我就把我的常闭触点放到谁的支路上,如此,只要我接通,它就甭想接通,就是这么任性。例如上左图的Y2并没有参与互锁,但Y0和Y1却不放过它,还是把自己的常闭触点放到Y2的支路上锁住了它。

四、顺序与逆序

1、顺序启动

  所谓顺序启动,是指多个输出线圈从上到下依次按顺序启动,不能越级启动。要实现这个功能,只需把上一个输出线圈的常开触点去联锁(串接)下一个输出就可以了,例如上图的Y0、Y1、Y2若要顺序启动,那就把Y0的常开触点联锁Y1,把Y1的常开触点联锁Y2,依次类推。显然,如果Y0不接通,Y1就不可能接通。这个和互锁有点像,只不过互锁用的是常闭触点,而顺序启动用的是常开触点。

  按照梯形图的编译规则,显然,梯形图从上到下的编程中,若要顺序启动,先启动的要放在上面,后启动的放下面。这其实有点像是过独木桥,一队人要过桥,只有前面的往前走,后面的才能前进,如果前面的停止不动,那么后面的再着急也只能干等着。

  我们再次举一反三,按照顺序启动的编程思路,只要我这个输出想要控制后面的谁,让它只能在我接通的情况下,才允许被接通,那我就把我的常开触点与它联锁,如下图所示,中间即使隔着多个梯级,Y10也只能在Y0输出为1的情况下才能接通。

  结合互锁和顺序启动,互锁是只要有一个接通,其他的都不能接通;而顺序启动是只要前面的接通,后面的才能接通,一个常闭,一个常开,两者还是很相似的。

2、逆序停止

  逆序停止,顾名思义,是指在梯形图中,只有下面的输出为0,上面的输出才能被允许停止,和顺序启动相反,如下图所示,只有Y2停止,输出为0,此时按下Y1的停止按钮X3,Y1才会输出为0,如果Y2输出为1,即使按下Y1的停止按钮X3,Y1线圈仍能通过其自身触点与Y2的触点串接连通。同理,Y1与Y0之间的控制也是如此。

  按照这个思路,也就是说,若想各个线圈逆序停止,只需把下一级线圈的常开触点与上一级线圈的停止按钮相并联就行。其实在这里我有一个小疑问,那就是上一级的线圈如果没有停止按钮怎么办?也许是我水平有限吧,有哪位大神能解答我这个小小的疑问吗?

  以上,是我这次分享的一些常用基本编程环节,当然,常用基本编程环节也不仅仅是我所提到的这些,其他的我就不列举了,因为太多了,我记不住,哇的一声哭出来。好了,这次的分享就到这里,亲们,下篇文章再会!