「学PLC」顺序控制指令及应用实例
一个复杂的任务往往可以分成若干个小任务,当按一定的顺序完成这些小任务后,整个大任务也就完成了。在生产实践中,顺序控制是指按照一定的顺序逐步控制来完成各个工序的控制方式。在采用顺序控制时,为了直观表示出控制过程,可以绘制顺序控制图。
图1是一个3台电动机顺序控制图,由于每一个步骤称作一个工艺,所以又称工序图。在PLC编程时,绘制的顺序控制图称为状态转移图或功能图,简称SFC图,图1b为图1a对应的状态转移图。
图1 一种3台电动机顺序控制图
顺序控制有3个要素:转移条件、转移目标和工作任务。在图1a中,当上一个工序需要转到下一个工序时必须满足一定的转移条件,如工序1要转到下一个工序2时,需按下启动按钮SB2,若不按下SB2,就无法进行下一个工序2,按下SB2即为转移条件。当转移条件满足后,需要确定转移目标,如工序1转移目标是工序2。每个工序都有具体的工作任务,如工序1的工作任务是“起动第一台电动机”。
PLC编程时绘制的状态转移图与顺序控制图相似,图1b中的状态元件(状态继电器)S0.1相当于工序1,“S Q0.0,1”相当于工作任务,S0.1的转移目标是S0.2,S0.6的转移目标是S0.0, SM0.1和S0.0用来完成准备工作,其中SM0.1为初始脉冲继电器,PLC启动时触点会自动接通一个扫描周期,S0.0为初始状态继电器,每个SFC图必须要有一个初始状态,绘制SFC图时要加双线矩形框。
★顺序控制指令用来编写顺序控制程序,S7-200 PLC有3条常用的顺序控制指令。
顺序控制指令使用及说明如图2所示,图2a为梯形图,图2b为状态转移图。从图中可以看出,顺序控制程序由多个SCR程序段组成,每个SCR程序段以LSCR指令开始、以SCRE指令结束,程序段之间的转移使用SCRT指令,当执行SCRT指令时,会将指定程序段的状态器激活(即置1),使之成为活动步程序,该程序段被执行,同时自动将前程序段的状态器和元件复位(即置0)。
图2 顺序控制指令使用举例
使用顺序控制指令时,要注意以下事项:
1)顺序控制指令仅对状态继电器S有效,S也具有一般继电器的功能,对它还可以使用其它继电器一样的指令。
2)SCR段程序(LSCR至SCRE之间的程序)能否执行,取决于该段程序对应的状态器S是否被置位。另外,当前程序SCRE(结束)与下一个程序LSCR(开始)之间的程序不影响下一个SCR程序的执行。
3)同一个状态器S不能用在不同的程序中,如主程序中用了S0.2,在子程序中就不能再使用它。
4)SCR段程序中不能使用跳转指令JMP和LBL,即不允许使用跳转指令跳入、跳出SCR程序或在SCR程序内部跳转。
5)SCR段程序中不能使用FOR、NEXT和END指令。
6)在使用SCRT指令实现程序转移后,前SCR段程序变为非活动步程序,该程序段的元件会自动复位,如果希望转移后某元件能继续输出,可对该元件使用置位或复位指令。
顺序控制主要方式有:单分支方式、选择性分支方式和并行分支方式。图2b所示的状态转移图为单分支方式,程序由前往后依次执行,中间没有分支,简单的顺序控制常采用这种单分支方式。较复杂的顺序控制可采用选择性分支方式或并行分支方式。
选择性分支方式
a)状态转移图
b)梯形图
图3 选择性分支方式
选择性分支状态转移图如图3a所示,在状态继电器S0.0后面有两个可选择的分支,当I0.0闭合时执行S0.1分支,当I0.3闭合时执行S0.3分支,如果I0.0较I0.3先闭合,则只执行I0.0所在的分支,I0.3所在的分支不执行,即两条分支不能同时进行。图3b是依据图3a画出的梯形图,梯形图工作原理见标注说明。
并行分支方式
a)状态转移图
b)梯形图
图4 并行分支方式
并行分支方式状态转移图如图4a所示,在状态器S0.0后面有两个并行的分支,并行分支用双线表示,当I0.0闭合时S0.1和S0.3两个分支同时执行,当两个分支都执行完成并且I0.3闭合时才能往下执行,若S0.1或S0.4任一条分支未执行完,即使I0.3闭合,也不会执行到S0.5。
图4b是依据图4a画出的梯形图。由于S0.2、S0.4两程序段都未使用SCRT指令进行转移,故S0.2、S0.4状态器均未复位(即状态都为1),S0.2、S0.4两个常开触点均处于闭合,如果I0.3触点闭合,则马上将S0.2、S0.4状态器复位,同时将S0.5状态器置1,转移至S0.5程序段。
1.系统控制要求
简易机械手结构如图5所示。M1为控制机械手左右移动的电动机,M2为控制机械手上下升降的电动机,YV线圈用来控制机械手夹紧放松,SQ1为左到位检测开关,SQ2为右到位检测开关,SQ3为上到位检测开关,SQ4为下到位检测开关,SQ5为工件检测开关。
图5 简易机械手的结构
简易机械手控制要求如下:
1)机械手要将工件从工位A移到工位B处。
2)机械手的初始状态(原点条件)是机械手应停在工位A的上方,SQ1、SQ3均闭合。
3)若原点条件满足且SQ5闭合(工件A处有工件),按下起动按钮,机械按“原点→下降→夹紧→上升→右移→下降→放松→上升→左移→原点”的步骤工作。
2.确定输入/输出设备,并为其分配合适的I/O端子
简易机械手控制需用到的输入/输出设备和对应的PLC端子见表1。
表1 简易机械手控制采用的输入/输出设备和对应的PLC端子
3.绘制控制线路图
图6为简易机械手的PLC控制线路图。
图6 简易机械手的PLC控制线路图
4.编写PLC控制程序
(1)绘制状态转移图
图7为简易机械手控制的状态转移图。
图7 简易机械手控制状态转移图
(2)绘制梯形图
启动STEP 7-Micro/WIN编程软件,按照图7所示的状态转移图编写梯形图,编写完成的梯形图如图8所示。
图8 简易机械手控制梯形图
下面对照图6控制线路图来说明图8梯形图的工作原理。
武术运动员在表演武术时,通常会在表演场地某位置站立好,然后开始进行各种武术套路表演,表演结束后会收势成表演前的站立状态。同样地,大多数机电设备在工作前先要处于初始位置(相当于运动员的表演前的站立位置),然后在程序的控制下,机电设备开始各种操作,操作结束又会回到初始位置,机电设备的初始位置也称原点。
1)工作控制。当PLC启动时,[2]SM0.1会接通一个扫描周期,将状态继电器S0.0被置位,S0.0程序段被激活,成为活动步程序。
①原点条件检测。机械手的原点条件是左到位(左限位开关SQ1闭合)、上到位(上限位开关SQ3闭合),即机械手的初始位置应在左上角。若不满足原点条件,原点检测程序会使机械手返回到原点,然后才开始工作。
[4]为原点检测程序,当按下起动按钮SB1→[1]I0.0常开触点闭合,辅助继电器M0线圈得电,M0.0自锁触点闭合,锁定供电,同时[4]M0.0常开触点闭合,因S0.0状态器被置位,故S0.0常开触点闭合,Q0.4线圈复位,接触器KM5线圈失电,机械手夹紧线圈失电而放松,[4]中的其它M0.0常开触点也均闭合。若机械手未左到位,开关SQ1断开,[4]I0.2常闭触点闭合,Q0.1线圈得电,接触器KM1线圈得电,通过电动机M1驱动机械手左移,左移到位后SQ1闭合,[4]I0.2常闭触点断开;若机械手未上到位,开关SQ3断开,[4]I0.4常闭触点闭合,Q0.3线圈得电,接触器KM4线圈得电,通过电动机M2驱动机械手上升,上升到位后SQ3闭合,[4] I0.4常闭触点断开。如果机械手左到位、上到位且工位A有工件(开关SQ5闭合),则[4]I0.2、I0.4、I0.6常开触点均闭合,执行“SCRTS0.1”指令,使S0.1程序段成为活动步程序,程序转移至S0.1程序段,开始控制机械手搬运工件。
②机械手搬运工件控制。S0.1程序段成为活动步程序后,[7]SM0.0常ON触点闭合→Q0.2线圈得电,KM3线圈得电,通过电动机M2驱动机械手下移,当下移到位后,下到位开关SQ4闭合,[7]I0.5常开触点闭合,执行“SCRT S0.2”指令,程序转移至S0.2程序段→[10]SM0.0常ON触点闭合,Q0.4线圈被置位,接触器KM5线圈得电,夹紧线圈YV得电将工件夹紧,与此同时,定时器T50开始1s计时→1s后,[10]T50常开触点闭合,执行“SCRT S0.3”指令,程序转移至S0.3程序段→[13]SM0.0常ON触点闭合→Q0.3线圈得电,KM4线圈得电,通过电动机M2驱动机械手上移,当上移到位后,开关SQ3闭合,[13]I0.4常开触点闭合,执行“SCRT S0.4”指令,程序转移至S0.4程序段→[16] SM0.0常ON触点闭合→Q0.0线圈得电,KM1线圈得电,通过电动机M1驱动机械手右移,当右移到位后,开关SQ2闭合,[16]I0.3常开触点闭合,执行“SCRT S0.5”指令,程序转移至S0.5程序段→[19]SM0.0常ON触点闭合→Q0.2线圈得电,KM3线圈得电,通过电动机M2驱动机械手下降,当下降到位后,开关SQ4闭合,[19]I0.5常开触点闭合,执行“SCRT S0.6”指令,程序转移至S0.6程序段→[22]SM0.0常ON触点闭合→Q0.4线圈被复位,接触器KM5线圈失电,夹紧线圈YV失电将工件放下,与此同时,定时器T50开始1s计时→1s后,[22]T50常开触点闭合,执行“SCRT S0.7”指令,程序转移至S0.7程序段→[25]SM0.0常ON触点闭合→Q0.3线圈得电,KM4线圈得电,通过电动机M2驱动机械手上升,当上升到位后,开关SQ3闭合,[25]I0.4常开触点闭合,执行“SCRT S1.0”指令,程序转移至S1.0程序段→[28]SM0.0常ON触点闭合→Q0.1线圈得电,KM2线圈得电,通过电动机M1驱动机械手左移,当左移到位后,开关SQ1闭合,[28]I0.2常闭触点断开,Q0.1线圈失电,机械手停止左移,同时[28]I0.2常开触点闭合,如果上到位开关SQ3(I0.4)和工件检测开关SQ5(I0.6)均闭合,执行“SCRT S0.1”指令,程序转移至S0.1程序段→[7]SM0.0常ON触点闭合,Q0.2线圈得电,开始下一次工件搬运。若工位A无工件,SQ5断开,机械手会停在原点位置。
2)停止控制。当按下停止按钮SB2→[1] I0.1常闭触点断开→辅助继电器M0.0线圈失电→[1]、[4]、[28]中的M0.0常开触点均断开,其中[1]M0常开触点断开解除M0.0线圈供电,[4]、[28]M0.0常开触点断开均会使“SCRT S0.1”指令无法执行,也就无法转移至S0.1程序段,机械手不工作。
(-END-)
来源:《学PLC超简单》蔡杏山主编
往期精彩文章回顾