三菱FX PLC,如何学习步进指令及其梯形图
上篇文章讲述了什么是顺序功能图(SFC),这次我们接着学习与其相关的步进指令和步进梯形图吧!
所谓“步进”,顾名思义,其实就是状态步的前进,即状态步的顺序执行,一步一步地往下走,直到整个顺序控制程序执行完毕(个人理解,但我觉得非常有道理哈哈)。
步进梯形图指令STL、RET步进梯形图指令包含步进指令STL和步进返回指令RET,在同一SFC的梯形图中缺一不可,如图19-1所示为它们的梯形图形式。看到这种成对出现的指令,大家是不是觉得似曾相识?
其实在之前的文章中也出现过许多这种形影不离的指令对,如子程序调用指令(CALL、SRET)、循环指令(FOR、NEXT)等,但STL指令和RET指令和这些成对的指令有所不同,什么?你问我哪里不同?
别急,我们接着往下看。
图19-1
STL指令和RET指令均无驱动条件,STL指令的适用软元件为状态继电器S,如图19-1中的S20,表示S20状态步的开始,有多少个状态步就有多少个STL,而RET指令在一个梯步进形图只出现一次,而且是在步进梯形图的结尾,表示步进梯形图的结束。
所以,知道STL指令、RET指令与上文所提的子程序调用指令、循环指令等的区别了吗?简单来说,虽然STL、RET指令在同一SFC的梯形图中缺一不可,但STL指令可以多次出现,而RET指令只出现一次,如下图19-2所示。
图19-2
状态的转移指令SET、OUT前面说到,有多少个状态步就有多少个STL,那状态步与状态步之间的转移条件与转移方向又是怎样实现的呢?
这就用到另外两个指令了,那就是SET指令和OUT指令。SET指令和OUT指令都具有同样的功能,就是自动复位上一个状态,同时激活下一个状态,但OUT指令是用于向分离的状态转移,至于什么是分离的状态,大家可以看上一篇的文章哦。
SET指令用于同一个SFC的梯形图中实现各个状态步之间的各种转移,如图19-3所示,其中STL与SET之间为状态步的命令与动作,如SLT S20与SET S30之间的省略号部分内容。
转移条件为X1的接通,转移方向为SET所带的状态继电器编号,如SET S30中的S30。
图19-3
上篇文章提到,转移条件不一定是单个触点,也可以是一段程序,显然,程序也被包含在省略号中了。
相关软元件
与SFC的梯形图有关的软元件包括状态继电器S和部分特殊辅助继电器M,下图19-4所示为相关状态继电器的编号与功能,这在上一篇文章也有提及。
图19-4
相关特殊辅助继电器编号与功能在编程手册的截图如下图1-5所示,各特殊继电器的含义也写得很详细了,所示我在这里也不再过多解释。
不过M8000和M8002不仅是在SFC的梯形图中被用到,在大多数梯形图中,它们的身影也是很常见的。
图19-5
看到这里,结合上篇文章,我相信大家对于SFC的梯形图也有了比较清晰的了解,图19-6就是一个简单的SFC的梯形图示例。
这里我就稍微考考大家好了,有哪位小可爱可以根据这个梯形图画出SFC吗?当然啦,画不出也没关系,因为在编程软件中,本就具有将梯形图转SFC或将SFC转梯形图的功能。
图19-6
咦?好像有什么不得了的东西混进来了!没错,就是在编程软件中,本来就可以直接编写SFC,然后让软件自动将SFC转换为梯形图。
这里可能又有读者提问了,那在编程软件中怎么编写SFC图呢?
编程软件中的SFC图
首先,编程软件中怎么编写SFC图我在和就不详细讲解了,因为那是软件使用的问题,大家感兴趣的可以看对应课程,因为只是操作问题,相信大家看一遍也就会了。我在这里就针对几点重点内容简单讲一下即可。
图19-6所示为SFC的梯形图的示例,其中开头部分为初始化梯形图块,在SFC编程模式下直接独立为一块,因为它的编写跟普通梯形图一样,如下图19-7所示。
图19-7
图19-6中的STL S0 直至RET之间的梯形图,在SFC编程模式下就以SFC块的形式编写,一个状态步为一个SFC块,例如S0状态步中的程序段正如下图19-8所示。
图19-8
转移条件虽然可以是程序段,但其在SFC图中用短横线表示的部分编写基本是单个触点或几个触点的串并联组合,如下图19-9所示,用于驱动转移指令TRAN。
图19-9
显然,在SFC编程模式下,没有用到STL指令和RET指,而且结构清晰明了,各个状态步独立编写,非常有利于我们对顺控程序进行设计和分析。
温馨提示:如果你没有用过编程软件是尝试编写一下,那么这部分的内容,你可能会完全看不懂哟。所以,大家非常有必要装一个软件玩一玩。
步进梯形图中的相关注意事项
(1) 输出驱动的保持性
当状态步内有驱动输出时,一旦状态发生转移,该驱动输出就会随着其状态步的复位而被复位。除非它用SET指令进行保持,在此情况下,即使所处状态已经复位,该驱动输出仍保持为ON。
如下图19-10所示,S20状态向S30状态转移时,Y0被复位为OFF,而Y1保持为ON。
图19-10
(2)双线圈输出的处理
在普通梯形图中,同一输出继电器线圈不能重复使用,但在SFC中却可以,只要该输出继电器线圈处在不同状态步中即可,但不建议使用重复线圈编程。
另外,对定时继电器也可以使用重复编号,但在两个状态步之间的转移时间为一个扫描周期,在该扫描周期内这两个状态步同时处于激活状态。所以,同一编号的定时继电器不能出现在相邻状态步中,如下图19-11所示。
图19-11
(3)输出驱动的互锁
由于在状态转移的一个扫描周期内,两个状态同时处于激活状态,所以对某些不能同时接通的输出驱动,有必要设置互锁环节,如下图19-12所示,两个状态步中的Y1与Y2互锁。
图19-12
(4)状态内指令的应用
对于无触点的驱动输出应先编写,如下图19-13所示,Y0、Y1均无触点驱动,应放在前面先编写。
另外,在每一个STL指令与SET指令之间的程序段,只有首行与左母线相连,对应在SFC编程模式下的每个状态步内,也是只有首行与左母线相连。
图19-13
说到这个首行与左母线相连的问题,我在听课的时候听到这个,就赶紧用编程软件试了一下。你不是说只能首行嘛,那我就偏偏把每一行都与左母线相连,然后发现无法编译,尴尬……
说到步进指令,就不得不提那个非常典型的案例了,就是电动机的顺序启动和逆序停下案例。如有4台电动机,按下启动按钮,按每隔3秒时间顺序启动;按下停止按钮,按每隔4秒时间逆序停止,其梯形图如下图19-14所示。
图19-4
至此,本次关于步进指令与其梯形图的学习分享已结束!
注:本文章内容都是基于三菱FX PLC 2N所写
选自《三菱FX系列PLC顺序控制应用》第二章第5~6课时
(技成培训网原创,作者:杨思慧,未经授权不得转载,违者必究)
通过实例玩转三菱PLC之四步八拍步进电机控制
首先介绍下什么是四相八拍步进电机,首先要搞明明白步进电机转速如何计算,那么就要明白两个基本概念:
1、拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即 A-AB-B-BC-C-CD-D-DA-A.
2、步距角:对应一个脉冲信号,电机转子转过的角位移用θ表示。θ=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。四拍运行时步距角为θ=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为θ=360度/(50*8)=0.9度(俗称半步)。
这两个概念清楚后,我们再来计算转速,以基本步距角1.8°的步进电机为例(现在市场上常规的二、四相混合式步进电机基本步距角都是1.8°),四相八拍运行方式下,每接收一个脉冲信号,转过0.9°,如果每秒钟接收400个脉冲,那么转速为每秒400X0.9°=360°,相当与每秒钟转一圈,每分钟60转。
其他情况同理可以计算得出。
下面举例来看看三菱PLC怎么控制一台四步八拍步进电机。
控制要求:四相八拍步进电机接线原理图如下,其中接线端A、B、C、D为脉冲电源输入端,E、F为公共端。
1)当按下正向启动按钮,步进电机按以下时序正向转动
(2)当按下反向启动按钮,步进电机按以下时序反向转动
3)当选择慢速时为1步/秒,选择快速时为10步/秒
PLC编程,所使用的软元件(变量):正向启动按钮 X0(I0.0),反向启动按钮X1(I0.1),停止按钮 X2(I0.2),速度控制按钮 X3(I0.3),A相输入端继电器Y0(Q0.0),B相输入端继电器Y1(Q0.1),C相输入端继电器Y2(Q0.2),D相输入端继电器Y3(Q0.3),
与PLC接线图如下:
程序如下
下面看看博途怎么编程,根据三菱编程我们用到时钟,首先设置时钟存储器,如下图,用到1s和0.1s的时钟分别为M0.5和M0.0
程序如下:
写文不易,喜欢的朋友别忘记关注、点赞、评论和转发。你们的支持是小编持续写文的动力。
相关问答
三菱plc步进程序怎么写?
要写三菱PLC步进程序,需要先确定控制的对象和算法,然后使用三菱PLC编程软件编写程序。在编写程序过程中,需要设置控制模块的输入输出口和各种参数,分配内存,...
用三菱PLC控制步进电机的编程是怎样写的?
M206:正转M207:反转Y0:脉冲输出Y1:反转信号D4200:频率(用于控制速度,数据来源于触摸屏)K99999999:脉冲数量K100:加速时间向左转|向右转如图,这个就是一...M20.....
三菱plc交通灯步进指令编程实例?
为了编写三菱PLC交通灯步进指令编程实例,首先需要定义交通灯的步进动作,例如红灯亮、绿灯亮、黄灯亮等。然后利用梯形图编程,根据交通灯状态的变化,设置相应...
三菱PLC怎么控制步进电机的速度?
段...是否需要精确定位?如果需要定位的,那么用定位指令发脉冲控制驱动器。如果不需要定位,只需要转动的,我觉得变频器或者伺服驱动电机也可以做到变频器的...
三菱plc步进指令怎么返回上一步?
你好,在三菱PLC中,可以使用"LD"(Load)指令来实现返回上一步的操作。具体步骤如下:1.在需要返回上一步的位置,使用"LD"指令将当前位置的状态加载...
在三菱PLC中步进指令梯形图编程SET置位指令,我看没用RST复位指令,它是怎么给复位的呢?
三菱plc中步进指令当中STL和RET,需要和set指令配合使用,如果不用步进指令则set给寄存器置1后如果想置0,必须用rst指令进行复位;如果使用步进指令后,当把下一...
三菱PLC控制步进电机,然后用编码器反馈这怎么做啊?
给你个参考。首先确定一个定时中断程序,控制精度越高,那么你的定时中断时间应越短,步进电机的控制就在中断里面做。(一般为1-10ms均可。)其实,步进电机的...
怎样用旋转编码器与三菱FX2nPLC控制步进电机?
步进电机的脉冲需要取PLC内置脉冲输出,三菱小型PLC都要集成的,Q,L系统的要加脉冲输出模块,FX3G晶体管的就有两组脉冲输出,用PLSY,PLSR等指令进行输出步进电...
【三菱PLC输出端连接步进驱动器时,为什么要串一个1.2K的电阻...
[最佳回答]这是步进电机驱动器的要求,没错的,我用了好几个,没出问题!算出来不一样是因为你不知道驱动器内部阻值,测量出来差不多是就行.这是步进电机驱动器的...
三菱plc编程,用什么语言比较好?
三菱plc编程,用什么语言比较好没有最好的编程语言,只有更合适的!三菱PLC的编程语言有指令表、梯形图、步进SFC、结构文本ST、结构化梯形图FBD几种,每种编程...