1、顺序功能图(SFC),STL指令的编程方式 使用启保停电路的编程方式 以转换为中心的编程方式 几种编程方式比较,编程方式的通用性;起保停通用性最强 不同编程方式设计程序长度比较;用STL指令程序最短。 电路结构及其其他方面的比较起保停电路编程方式 - 以步为中心;以转换为中心编程方式 - 以转换为中心(转换实现的基本规则);STL指令方式- 以STL触点或辅助继电器为中心(转换实现的基本规则),各种编程方式比较,;,;,基本概念,步进控制: 在多工步的控制中,按照一定的顺序分步动作,即上一步动作结束后,下一步动作才开始。,步进指令:专门用于步进控制的指令,编程步骤: 1)根据工艺流程画出状态转
2、移图;2)根据状态转移图画出步进梯形图;3)根据步进梯形图编写出指令表。,状态转移图,状态转移图简称SFC):是 用状态继电器来描述工步转移的图形。,满足转移条件时,实现状态转移,即上一状态(转移源)复位,下一状态(转移目标)置位。,指令表,对步进接点用步进指令STL编程; 当步进控制范围结束时,用步进返回指令RET; 与步进接点相连的触点用LD/LDI指令。,使用步进指令需要说明的问题,1. 状态S作为辅助继电器使用时,不能提供步进接点(步进接点是可以产生一定步进动作的接点)。 2. 输出的驱动方法。STL内的母线一旦写入LD或LDI指令后,对不需要触点的线圈就不能再编程,如图(a)所示。若
3、要编程,需变换成图(b)所示。,使用STL指令的编程方式,步进梯形指令 简称STL指令。,STL 步进阶梯指令,RET 复位指令,使用STL指令的编程方式,STL S21 OUT Y0LD X1 SET S22,STL指令的特点:,1. 与STL触点相连的触点应使用LD/LDI指令。,2. STL触点可以直接驱动或通过别的触点驱动 Y、M、S、T等元件的线圈,STL触点也可以使Y、M、S等元件置位或复位。,3. CPU只执行活动步对应的程序。,4. 使用STL指令时允许双线圈输出。,5. STL指令只能用于状态寄存器,在没有并行序列时,一个状态寄存器的STL触点在梯形图中只能出现一次。,6.
4、在STL触点驱动的电路块中不能使用MC和MCR指令,可 以使用CJP/EJP指令,当执行CJP指令跳入某一个STL 触点的电路块时,不管该STL触点是否接通,均执行对应的 EJP指令之后的电路.,7. 可以对状态寄存器使用LD 、 LDI 、AND、 ANI、 OR ORI、 S 、R 、 OUT等指令。,8. 对状态寄存器置位的指令,如果不在STL触点驱动的电路块内置位时,系统程序不会自动将前级步对应的状态寄存器复位。,使用步进指令需要说明的问题,3. 栈指令的位置。不能在内母线处直接用栈指令(MPS/MRD/MPP),须在LD或LDI指令后使用栈指令,图a所示。 4. 状态的转移方法。对于
5、STL指令后的状态(S),OUT指令和SET指令具有同样的功能,都将自动复位转移源和置位转移目标。但OUT指令用于向分离状态转移,而SET指令用于向下一个状态转移。如图b所示。,使用步进指令需要说明的问题,5. 在不同的步进段,允许有重号的输出(注意:状态号不能重复使用)。如图(a)所示,表示Y2在S20和S21两个步进段都接通,它与图(b)等效。 6. 在不相邻的步进段,允许使用同一地址编号的定时器(注意:在相邻的步进段不能使用),如图所示。故对于一般的时间顺序控制,只需23个定时器即可。,使用步进指令需要说明的问题,7. 若需要保持某一个输出,可以采用置位指令SET,当该输出不需要再保持时
6、,可采用复位指令RST。 8. 初始状态用双线框表示,通常用特殊辅助继电器M8002的常开触点提供初始信号。其作用是为启动作好准备,防止运行中的误操作引起的再次启动。(如前例) 9. 在步进控制中,不能用MC指令。 10. S要有步进功能,必须要用置位指令(SET),才能提供步进接点,同时还可提供普通接点。(举例讲解) 11. 采用应用指令FNC40(ZRST)进行状态的区间复位,如图5.10所示。,使用步进指令需要说明的问题,12. 状态转移瞬间(一个扫描周期),由于相邻两个状态同时接通,对有互锁要求的输出,除在程序中应采取互锁措施外,在硬件上也应采取互锁措施,其实现方法如图所示 。,仿ST
7、L指令的编程方式,与STL指令的不同之处:1)与代替STL触点的常开触点,应使用AND或ANI指令(而非LD或LDI);2)对前级步的辅助继电器复位,由用户程序在梯形图中用RST指令完成;3)不允许出现双线圈,使用起保停电路的编程方式,启动、保持和停止电路(起保停电路),特点: 短信号的记忆和自保持功能启动信号、停止信号可以是由多个触点组成的串、并联电路起保停电路仅仅使用触点和线圈,前级步,后继步,2. 使用起保停电路的编程方式,转换条件,使用起保停电路的编程方式,X2 下限位,X0 中限位,X1 高限位,M,液体CY3,电机Y2,以转换为中心的编程方式,转换实现的条件(1)该转换所有的前级步
8、都是活动步(2)相应的转换条件得到满足 转换实现应完成的操作(1)使所有由有向连线与转换符号相连后续步都变为活动;(2)使得所有有向连线与相应转换符号相连的前级步都变为不活动步。,以转换为中心的编程方式,单序列的编程方式,以转换为中心的编程方式 单序列的编程方式,选择、并行序列的编程方式,选择序列的分支、合并编程方式 并行序列的分支、合并编程方式,以转换为中心的编程方式,选择、并行序列的编程方式,3) 应用实例,3) 应用实例,仿STL指令的编程方式,仿STL指令的编程方式,仿STL指令的编程方式,前级步,后继步,使用起保停电路的编程方式,转换条件,M203 X3 M201 M200,M800
9、2,M200,M200 X0 M202 M201,M201,M201 X01 M203 M202,M202,M201 X2 M200 M203,M203,M201,M202,Y0,Y2,Y1,初始,快进,工进,快退,用辅助继电器M,以转换为中心的编程方式,转换实现的条件(1)该转换所有的前级步都是活动步(2)相应的转换条件得到满足 转换实现应完成的操作(1)使所有由有向连线与相应转换符号相连的后续步都应变为活动;(2)使得所有有向连线与相应转换符号相连的前级步都变为不活动步。,单序列的编程方式,信号灯控制系统举例,RST,M200,SET,M201,SET,M200,M8002,M200 X0
10、,M201 T0,M202 T1,M203 T2,信号灯控制系统举例,M203 Y2,M200 Y0,M201,M201 T0 K40,M202 T1 K60,T2 K50,M202 Y2,M203,信号灯控制系统举例,选择、并行序列的编程方式,选择序列的分支、合并编程方式 并行序列的分支、合并编程方式,3) 应用实例,使用STL指令的编程方法 STL指令步进梯形指令(Step Ladder Instruction)简称为STL指令,如图所示。FX系列PLC还有一条使STL指令复位的RET指令。利用这两条指令,可以很方便地编制顺序控制梯形图程序。,STL指令可以生成流程和工作与顺序功能图非常接
11、近的程序。顺序功能图中的每一步对应一小段程序,每一步与其他步是完全隔离开的。 根据要求将这些程序段按一定的顺序组合在一起,就可以完成控制任务。这种编程方法可以节约编程的时间,并能减少编程错误。,用FX系列PLC的状态(S)编制顺序控制程序时,一般应与STL指令一起使用。 S0S9用于初始步; S10S19用于自动返回原点。 STL触点驱动的电路块具有三个功能: 对负载的驱动处理 指定转换条件 指定转换目标,STL触点一般是与左侧母线相连的常开触点,当某一步为活动步时,对应的STL触点接通,它右边的电路被处理,直到下一步被激活。 某一STL触点闭合后,该步的负载线圈被驱动。当该步后面的转换条件满
12、足时,转换实现,即后续步对应的状态被SET指令或OUT指令置位,后续步变为活动步,同时与原活动步对应的状态被系统程序自动复位,原活动步对应的STL触点断开。,系统的初始步应使用初始状态S0S9,它们应放在顺序功能图的最上面。 在由STOP状态切换到RUN状态时,可用此时只持续一个扫描周期的初始化脉冲M8002来将初始状态置为ON,为以后步的活动状态的转换作好准备。 需要从某一步返回初始步时,可以对初始状态使用OUT指令或SET指令。,单序列的编程方法,如红绿灯控制程序,虽然是循环控制,但都以一定顺序逐步执行且没有分支,所以属于单一顺序流程。,图中在S21执行完后即结束。,在步进阶梯图中,以复位
13、(RST)正在执行的步阶来结束步进动作。,从头到尾只有一条路可走,称为单流程结构。,右图中的旋转工作台用凸轮和限位开关来实现运动控制。在初始状态时左限位开关X3为ON,按下起动按钮X0,Y0变为ON,电动机驱动工作台沿顺时针正转,转到右限位开关X4所在位置时暂停5s(用T0定时)。,定时时间到时Y1变为ON,工作台反转,回到限位开关X3所在的初始位置时停止转动,系统回到初始状态。,工作台一个周期内的运动由图中自上而下的4步组成,它们分别对应于S0和S20S22,步S0是初始步。 PLC上电时进入RUN状态,初始化脉冲M8002的常开触点闭合一个扫描周期,梯形图中第一行的SET指令将初始步S0置
14、为活动步。,在梯形图的第二行中,S0的STL触点和X0、X3的常开触点组成的串联电路代表转换实现的两个条件,S0的STL触点闭合表示转换的前级步S0是活动步,X0和X3的常开触点同时闭合表示转换条件满足。,在初始步时按下起动按钮X0,如果3个触点同时闭合,转换实现的两个条件同时满足。此时置位指令“SET S20”被执行,后续步S20变为活动步,同时系统程序自动地将前级步S0复位为不活动步。,S20的STL触点闭合后,Y0的线圈通电,工作台正转。限位开关X4动作时,转换条件得到满足,S21被置位,进入暂停步,同时前级步的状态S20被自动复位,系统将这样一步一步地工作下去,在最后一步,工作台反转,
15、返回限位开关X3所在的位置时, “OUT S0”指令使初始步对应的S0变为ON并保持,系统返回并停止在初始步。,在图中梯形图的结束处,一定要使用RET指令,才能使LD点回到左侧母线上,否则系统将不能正常工作。,【应用系统设计】 简易红绿灯控制系统,单流程程序设计实例,使用STL指令应注意以下问题: (1)与STL触点相连的触点应使用LD或LDI指令,即LD点移到STL触点的右侧,该点成为临时母线。 下一条STL指令的出现意味着当前STL程序区的结束和新的STL程序区的开始。 RET指令意味着整个STL程序区的结束,LD点返回左侧母线。 各STL触点驱动的电路一般放在一起,最后一个STL电路结束
16、时一定要使用RET指令,否则将出现“程序错误”信息,PLC不能执行用户程序。,(2)STL触点可以直接驱动或通过别的触点驱动Y、M、S、T等元件的线圈和应用指令。STL触点右边不能使用入栈(MPS)指令。 (3)由于CPU只执行活动步对应的电路块,使用STL指令时允许双线圈输出,即不同的STL触点可以分别驱动同一编程元件的一个线圈。但是同一元件的线圈不能在可能同时为活动步的STL区内出现,在有并行序列的顺序功能图中,应特别注意这一问题。,(4)在步的活动状态的转换过程中,相邻两步的状态会同时ON一个扫描周期,可能会引发瞬时的双线圈问题。为了避免不能同时接通的两个输出同时动作,除了在梯形图中设置
17、软件互锁电路外,还应在PLC外部设置由常闭触点组成的硬件互锁电路。 定时器在下一次运行之前,首先应将它复位。同一定时器的线圈可以在不同的步使用,但是如果用于相邻的两步,在步的活动状态转换时,该定时器的线圈不能断开,当前值不能复位,将导致定时器的非正常运行。,(5)OUT指令与SET指令均可以用于步的活动状态的转换,将原来的活动步对应的状态寄存器复位,此外还有自保持功能。 SET指令用于将STL状态置位为ON并保持,以激活对应的步。如果SET指令在STL区内,一旦当前的STL步被激活,原来的活动步对应的STL线圈被系统程序自动复位。 SEL指令一般用于驱动状态的元件号比当前步的状态的元件号大的S
18、TL步。,在STL区内的OUT指令用于顺序功能图中的闭环和跳步,如果想向前跳过若干步,或跳回已经处理过的步,可以对状态使用OUT指令。OUT指令还可以用于远程跳步,即从顺序功能图中的一个序列跳到另外一个序列。以上情况虽然也可以使用SET指令,但最好使用OUT指令。,正向跳步 逆向跳步 远程跳步,(6)STL指令不能与MC-MCR指令一起使用。在FOR-NEXT结构中、子程序和中断程序中,不能有STL程序块,STL程序块不能出现在FEND指令之后。STL程序块中可以使用最多4级嵌套的FOR-NEXT指令,虽然并不禁止在STL触点驱动的电路块中使用CJ指令,但是可能引起附加的和不必要的程序流程混乱
19、。为了保证程序易于维护和快速查错,建议不要在STL程序中使用跳步指令。,(7)并行序列或选择序列中分支处的支路数不能超过8条,总的支路数不能超过16条。 (8)在转换条件对应的电路中,不能使用ANB、ORB、MPS、MRD和MPP指令。可以用转换条件对应的复杂电路来驱动辅助继电器,再用后者的常开触点来作转换条件。 (9)与条件跳步指令(CJ)类似,CPU不执行处于断开状态的STL触点驱动的电路块中的指令,在没有并行序列时,只有一个STL触点接通。,(10)M2800M3071是单操作标志,借助单操作标志,可以用一个转换条件实现多次转换。下图中,当S20为活动步,X0的常开触点闭合时,M2800
20、的线圈通电,M2800的第一个上升沿检测触点闭合一个扫描周期,实现了步S20到步S21的转换。,X0的常开触点下一次由断开变为接通时,因为S20是不活动步,没有执行图中的第一条LDP M2800指令,S21的STL触点之后的触点是M2800的线圈之后遇到的第一个上升沿检测触点,所以该触点闭合一个扫描周期,系统由步S21转换到步S22。,选择序列的编程方法 复杂的控制系统的顺序功能图由单序列、选择序列和并行序列组成,掌握了选择序列和并行序列的编程方法,就可以将复杂的顺序功能图转换为梯形图。,当S0之行后,若X1先有效,则跳到S21执行,此后即使X2有效,S22也无法执行。之后若X3有效,则脱离S
21、21而跳到S23执行,当X5有效后,则结束流程。,选择分支与汇合流程,当S0之行后,若X2先有效,则跳到S22执行,此后即使X1有效,S21也无法执行。,若有多条路径,而只能选择其中一条路径来执行,这种分支方式称为选择分支。,选择分支流程不能交叉,对左图所示的流程必须按右边所示的流程进行修改。,选择分支与汇合流程,跳转流程,向下面状态的直接转移或向系列外的状态转移被成为跳转,用符号指向转移的目标状态。,重复流程,向前面状态进行转移的流程称为重复。用指向转移的目标状态。使用重复流程可以实现一般的重复,也可以对当前状态复位。,右图是自动门控制系统的顺序功能图。人靠近自动门时,感应器X0为ON,Y0
22、驱动电动机高速开门,碰到开门减速开关X1时,变为低速开门。碰到开门极限开关X2时电动机停转,开始延时。若在0.5s内感应器检测到无人,Y2起动电动机高速关门。碰到关门减速开关X4时,改为低速关门,碰到关门极限开关X5时电动机停转。在关门期间若感应器检测到有人,停止关门,T1延时0.5s后自动转换为高速开门。,右图中的步S23之后有一个选择序列的分支。当步S23是活动步(S23为ON)时,如果转换条件X0为ON(检测到有人),将转换到步S25; 如果转换条件X4为ON,将进入步S24。,如果在某一步的后面有N条选择序列的分支,则该步的STL触点开始的电路块中应有N条分别指明各转换条件和转换目标的
23、并联电路。例如步S23之后有两条支路,两个转换条件分别为X4和X0,可能分别进入步S25和步S24,在S0的STL触点开始的电路块中,有两条分别由X4和X0作为置位条件的电路。,右图中的步S20之前有一个由两条支路组成的选择序列的合并,当S0为活动步,转换条件X0得到满足,或者步S25为活动步,转换条件T1得到满足,都将使步S20变为活动步,同时系统程序将步S0或步S25复位为不活动步。,2选择序列的合并的编程方法,在梯形图中,由S0和S25的STL触点驱动的电路块中均有转换目标S20,对它们的后续步S20的置位是用SET指令实现的,对相应前级步的复位是由系统程序自动完成的。,【应用范例】洗车
24、流程控制,选择分支与汇合流程设计实例-洗车流程程序设计,若方式选择开关(COS)置于手动方式,当按下START启动后,则按下列程序动作: 执行泡沫清洗(用MC1驱动); 按PB1则执行清水冲洗(用MC2驱动); 按PB2则执行风干(用MC3驱动); 按PB3则结束洗车。,若方式若选择开关(COS)置于自动方式,当按START启动后,则自动按洗车流程执行。其中泡沫清洗10秒、清水冲洗20秒、风干5秒,结束后回到待洗状态。,任何时候按下STOP,则所有输出复位,停止洗车,项目说明:,功能分析:,手动、自动只能选择其一,因此使用选择分支来做。,依题目说明可将电路规划为两种功能,而每种功能有三种依PB
25、按钮或设定时间而顺序执行的状态。,手动状态 状态S21MC1动作 状态S22MC2动作 状态S23MC3动作 状态S24停止,自动状态 状态S31MC1动作 状态S32MC2动作 状态S33MC3动作 状态S24停止,元件分配:,启动按钮、停止按钮,使用输入继电器X0、X1,方式选择开关,使用输入继电器X2,清水冲洗按钮,使用输入继电器X3,泡沫清洗驱动,使 用输出继电器Y1,风干机驱动,使用 输出继电器Y2,清水冲洗驱动,使 用输出继电器Y0,风干按钮,使用输入继电器X4,结束按钮,使用输 入继电器X5,绘绘制状态流程图,STOP 动作,设置M0,可暂存START按钮状态,避免一直按住按钮,
26、另一种结束方式:清除本身,允许再次 启动电路,步进阶梯图转换,当S0执行后,若X1有效,则S20及S21同时执行。,若有多条路径,且必须同时执行,这种分支的方式称为并进分支流程。在各条路径都执行后,才会继续往下指令,像这,种有等待功能的方式称之为并进汇合。,当S22及S23都已执行后,若X4有效,则脱离S22及S23而跳到S24执行,程序结束。,当左边路径已执行到S22,而右边路径尚停留在S21时,此时即使X4有效,也不会跳到S24执行。,并行序列的编程方法,三、并进分支与汇合流程,如左图所示的流程都是可能的程序。B流程没有问题,但A流程在并进汇合处有等待动作的状态,请务必注意。,三、并进分支
27、与汇合流程,如在并进分支与汇合点处不允许符号*或符号 的转移条件,应按右图修改。,右图为专用钻床控制系统的顺序功能图, 图中分别由S22S24和S25S27组成的两个单序列是并行工作的,设计梯形图时应保证这两个序列同时开始工作和同时结束,即两个序列的第一步S22和S25应同时变为活动步,两个序列的最后一步S24和S27应同时变为不活动步。,并行序列的分支的处理是很简单的,当步S21是活动步,且X1为ON时,步S22和S25同时变为活动步,两个序列开始同时工作。在梯形图中,用S21的STL触点和X1的常开触点组成的串联电路来控制SET指令,对S22和S25同时置位,系统程序将前级步S21变为不活
28、动步。,图中并行序列合并处的转换有两个前级步S24和S27,当它们均为活动步并且转换条件满足,将实现并行序列的合并。未钻完3对孔时,C0的常闭触点闭合,转换条件C0满足,将转换到步S28,即该转换的后续步S28变为活动步,系统程序自动地将该转换的前级步S24和S27同时变为不活动步。在梯形图中,用S24和S27的STL触点和C0的常闭触点组成的串联电路使S28置位。,图中,S27的STL触点出现了两次,如果不涉及并行序列的合并,同一状态的STL触点只能在梯形图中使用一次。串联的STL触点的个数不能超过8个,或说一个并行序列中的序列数不能超过8个。 钻完3对孔时,C0的常开触点闭合,转换条件C0
29、满足,将转换到步S29。在梯形图中,用S24和S27的STL触点和C0的常开触点组成的串联电路,使S29置位。,1.初始化程序 FX系列PLC的状态初始化指令IST(Initial State)的功能指令编号为FNC60,它与STL指令一起使用,专门用来设置具有多种工作方式的控制系统的初始状态和设置有关的特殊辅助继电器的状态,可以大大简化复杂的顺序控制程序的设计工作。IST指令只能使用一次,它应放在程序开始的地方,被它控制的STL电路应放在它的后面。,使用步进梯形指令的编程方法,机械手控制系统的顺序功能图如图所示。该系统的初始化程序(见图5-35)用来设置初始状态和原点位置条件。IST指令中的
30、S20和S30用来指定在自动操作中用到的最低和最高的状态的元件号,IST中的源操作数可以取X、Y和M,图535中IST指令的源操作数X10用来指定与工作方式有关的输入继电器的首元件,它实际上指定从X10开始的8个输入继电器,它们分别具有以下的意义:X10:手动X11:回原点X12:单步运行X13:单周期运行(半自动)X14:连续运行(全自动)X15:回原点起动X16:自动操作起动X17:停止X10X14中同时只能有一个处于接通状态,必须使用选择开关(见图5-25),以保证这5个输人中不可能有两个同时为ON。,IST指令的执行条件满足时,初始状态S0S2和下列的特殊辅助继电器被自动指定为以下功能
31、,以后即使IST指令的执行条件变为OFF,这些元件的功能仍保持不变:M8040:为1时禁止所有的状态转换M8041:转换起动M8042:起动脉冲M8043:回原点完成M8044:原点条件满足M8047:STL监控有效So:手动操作初始状态S1:回原点初始状态S2:自动操作初始状态,如果改变了当前选择的工作方式,在“回原点完成”标志M8043变为ON之前,所有的输出继电器将变为OFF。STL监控有效标志M8047的线圈“通电”时,当前的活动步对应的状态的元件号按从大到小的顺序排列,存放在特殊数据寄存器D8040一D8047中,因此可以监控8点活动步对应的状态的元件号。此外,若有任何一个状态为ON
32、,特殊辅助继电器M8046将为ON。,2手动程序手动程序(见图535)与图528中的程序基本上相同,手动程序用初始状态S0控制,因为手动程序、自动程序(不包括回原点程序)和回原点程序均用STL触点驱动,这3部分程序不会同时被驱动,所以用STL指令和IST指令编程时,不必像图51那样,用CJ指令来切换自动程序和手动程序。,3自动返回原点程序 自动返回原点的顺序功能图如图536所示,当原点条件满足时,特殊辅助继电器M8044(原点条件)为ON(见图中的初始化程序)。,自动返回原点结束后,用SET指令将M8043(回原点完成)置为ON,并用RST指令将回原点顺序功能图中的最后一步S12复位,返回原点
33、的顺序功能图中的步应使用S10S19。,4自动程序 用STL指令设计的自动程序的顺序功能图如图5-34所示,特殊辅助继电器M8041(转换起动)和M8044(原点条件)是从自动程序的初始步S2转换到下一步S20的转换条件。自动程序的梯形图见图5-35。 使用IST指令后,系统的手动、自动、单周期、单步、连续和回原点这几种工作方式的切换是系统程序自动完成的,但是必须按照前述的规定,安排IST指令中指定的控制工作方式用的输入继电器X10X17的元件号顺序。 工作方式的切换是通过特殊辅助继电器M8040M8042实现的,IST指令自动驱动M8040M8042。,5使用IST指令时输入继电器元件号的处
34、理 图5-37a中的源操作数M0表示M0M7分别具有图5-37b中所示的意义。IST指令可以使用元件号不连续的输入继电器(见图5-37b),也可以只使用前述的部分工作方式。,特殊辅助继电器M8000在RUN(运行)状态时为ON,其常闭触点一直处于断开状态。图5-37c中只有回原点和连续两种工作方式,其余的工作方式是被禁止的。图5-37c中“起动”与“回原点起动”功能合用一个按钮X32。,52使用起保停电路的编程方法 根据顺序功能图来设计梯形图时,可以用辅助继电器M来代表步。 起保停电路仅仅使用与触点和线圈有关的指令,这是一种通用的编程方法,可以用于任意型号的PLC。,右下图中的步M1、M2和M
35、3是顺序功能图中顺序相连的3步。设计起保停电路的关键是找出它的起动条件和停止条件。 根据转换实现的基本规则,步M2变为活动步的条件是它的前级步M1为活动步,且转换条件X1=1。,在起保停电路中,则应将前级步M1和转换条件X1对应的常开触点串联,作为控制M2的起动电路。,控制M2的起动电路接通后,在下一个扫描周期,前级步M1变为不活动步,M1的常开触点断开,M2自保。当M2和X2均为ON时,步M3变为活动步,这时步M2应变为不活动步,因此可以将M3=1作为使辅助继电器M2变为OFF的条件,即将后续步M3的常,闭触点与M2的线圈串联,作为起保停电路的停止电路。 梯形图可以用逻辑代数式表示为:M2=
36、(M1X1+M2)/M3,单序列的编程方法,右图是某小车运动的示意图。设小车在初始位置时停在右边,限位开关X2为ON。按下起动按钮X3后,小车左行,碰到限位开关X1时,变为右行;返回限位开关X2处变为左行,碰到限位开关X0时,变为右行,返回起始位置后停止运动。,一个工作周期可以分为一个初始步和4个运动步,分别用M0M4来代表这5步。起动按钮X3、限位开关X0X2的常开触点是各步之间的转换条件。,如某一输出继电器在几步中都应为ON,应将代表各有关步的辅助继电器的常开触点并联后,驱动该输出继电器的线圈。如图中Y0在步M1和M3中都应为ON,所以将M1和M3的常开触点并联后,来控制Y0的线圈。,选择
37、序列与并行序列的编程方法 如人行横道处的交通信号灯。按下起动按钮X0,步M1和步M5同时变为活动步。,按下停止按钮X1,在完成顺序功能图中一个工作周期的最后一个步(车道黄灯亮、人行道红灯亮)的工作后返回初始状态,所有的灯熄灭。为了实现在最后一步返回初始状态,在梯形图中用起保停电路和起动、停止按钮来控制M10,按下起动按钮X0,M10变为ON并保持,按下停止按钮X1,M10变为OFF,但是系统不会马上返回初始步,因为M10只是在步M8之后起作用。交通灯的闪动是用周期为1s的时钟脉冲M8013的触点实现的。,车道交通灯和人行道交通灯是同时工作的,可以用并行序列来表示它们的工作情况。在顺序功能图中,
38、为了避免从并行序列的汇合处直接转换到并行序列的分支处,在步M4和M7的后面设置了一个虚设步,该步没有什么具体的操作,进入该步后,将马上转移到下一步。,1选择序列的分支的编程方法 如果某一步的后面有一个由N条分支组成的选择序列,该步可能转换到不同的N步去,应将这N个后续步对应的辅助继电器的常闭触点与该步的线圈串联,作为结束该步的条件。,右图中步M8之后有一个选择序列的分支,当它的后续步M0、M1和M5变为活动步时,它应变为不活动步。因为M1和M5是同时变为活动步的,所以只需将M0和M1或M0和M5的常闭触点与M8的线圈串联。,2选择序列的合并的编程方法对于选择序列的合并,如果某一步之前有N个转换
39、,则代表该步的辅助继电器的起动电路由N条支路并联而成,各支路由某一前级步对应的辅助继电器的常开触点与相应转换条件对应的触点或电路串联而成。,右图中,步M1和步M5之前有一个选择序列的合并,当步M0为活动步并且转换条件X0满足,或者步M8为活动步,并且转换条件M10满足,步M1和步M5都应变为活动步,即控制M1和M5的起保停电路的起动条件应为M0X0+M8M10,对应的起动电路由两条并联支路组成,每条支路分别由M0、X0和M8、M10的常开触点串联而成。,3并行序列的分支的编程方法 并行序列中各单序列的第一步应同时变为活动步。对控制这些步的起保停电路使用同样的起动电路,可以实现这一要求。,右图中
40、步M0之后有一个并行序列的分支,当步M8为活动步并且转换条件M10满足,或步M0为活动步并且转换条件X0得到满足,都应转换到步M1和步M5,M1和M5应同时变为ON,这是用逻辑关系式M0X0+M8M10对应的电路同时作为控制M1和M5的起保停电路的起动电路实现的。,4并行序列的合并的编程方法 步M8之前有一个并行序列的合并,该转换实现的条件是所有的前级步(即步M4和M7)都是活动步且转换条件T5满足。由此可知,应将M4,M7和T5的常开触点串联,作为控制M8的起保停电路的起动电路。,仅有两步的闭环的处理 如果在顺序功能图中有仅由两步组成的小闭环,相应的辅助继电器的线圈将不能“通电”。例如在M3
41、和X3均为1状态时,M2的起动电路接通,但是这时与它串联的M3的常闭触点却是断开的,所以M2的线圈将不能“通电”。出现上述问题的根本原因是闭环中只有两步,步M2既是步M3的前级步,又是它的后续步。,为了解决这一问题,增设了一个受X2控制的中间元件M10,用M10的常闭触点取代图中X2的常闭触点。如果M2为活动步时X2变为l状态,执行图中的第1个起保停电路时,M10尚为0状态,它的常闭触点闭合,M2的线圈通电,保证了控制M3的起保停电路的起动电路接通,使M3的线圈通电,转换到步M3。执行完图中最后一行电路后,M10变为1状态,在下一个扫描周期使M2的线圈断电。,M10,=1,以转换为中心的编程方
42、法,单序列的编程方法 图中X1对应的转换需要同时满足两个条件,即该转换的前级步是活动步和转换条件满足。在梯形图中,可以用M1和X1的常开触点组成的串联电路来表示上述条件。该电路接通时,两个条件同时满足,此时应完成两个操作,即将该转换的后续步变为活动步和将该转换的前级步变为不活动步。,右图为两条运输带顺序相连,应先起动2号运输,按下起动按钮,2号运输带开始运行,5s后1号运输带自动起动。停机的顺序与起动的顺序刚好相反,间隔仍然为5s。,在顺序功能图中,如果某一转换所有的前级步都是活动步并且相应的转换条件满足,则转换实现。在以转换为中心的编程方法中,将该转换所有前级步对应的辅助继电器的常开触点与转
43、换对应的触点或电路串联,作为执行SET指令和RST指令的条件。用SE指令使所有后续步对应的辅助继电器置位,用RST指令使所有前级步对应的辅助继电器复位。,选择序列与并行序列的编程方法 在地下停车场的出人口处,同时只允许一辆车进出,在进出通道的两端设置有红绿灯,光电开关X和X1用于检测是否有车经过,光线被车遮住时X或X1为ON。,有车进入通道时光电开关检测到车的前沿,两端的绿灯灭,红灯亮,以警示两方后来的车辆不可再进入通道。车开出通道时,光电开关检测到车的后沿,两端的红灯灭,绿灯亮,别的车辆可以进入通道。,图中的转换条件X0和X1实际上是在上升沿时起作用,X0和1的普通触点和上升沿检测触点在这种
44、情况下是等效的。,组合机床是针对特定工件和特定加工要求设计的自动化加工设备,通常由标准通用部件和专用部件组成,PLC是组合机床电气控制系统中的主要控制设备。,并行序列的编程方法,用于双面钻孔的组合机床在工件相对的两面钻孔,机床由动力滑台提供进给运动,刀具电动机固定在动力滑台上。,工件装入后,按起动按钮X0,工件夹紧,X1变为ON,M2和M6变为活动步,两侧同时进入快速进给工步。两侧加工均完成后,两侧动力滑台退回原位,系统进入步M10。工件松开,限位开关X10变为N,系统返回初始步M0,一次加工的工作循环结束。 为保证并行序列各子序列同时结束,在各子序列的末尾增设了一个等待步(即步M5和M9),
45、如果两个子序列分别进入了步M5和M9,表示两侧滑台的快速退回均已结束,应转换到步M10。步M5和M9之后的转换条件为“=1”,表示应无条件转换,在梯形图中,该转换等效为一根短接线,或理解为不需要转换条件。,下图中转换的上面是并行序列的合并,转换的下面是并行序列的分支,该转换实现的条件是所有的前级步(即步M13和M17)都是活动步和转换条件X5+/X7满足。由此可知,应将M13、M17、X5的常开触点和X7的常闭触点组成的串并联电路,作为使M22、M26置位和使M13、M17复位的条件。,具有多种工作方式的系统的编程方法,工作方式 为了满足生产的需要,很多工业设备要求设置多种工作方式,例如手动和
46、自动(包括连续、单周期、单步和自动返回初始状态)工作方式。如何将多种工作方式的功能融合到一个程序中,是梯形图设计的难点之一。,总体结构右图所示。选择手动工作方式时手动开关X10为ON,将跳过自动程序,执行公用程序和手动程序。选择自动工作方式时X10为OFF,将跳过手动程序,执行公用程序和自动程序。,某机械手用来分选钢质大球和小球,控制面板如右图。 5种工作方式选择开关,6个按钮是手动按钮。为了保证在紧急情况下(包括PLC发生故障时)能可靠地切断PLC的负载电源,设置了交流接触器KM。,右图是外部接线图。Y4为ON时钢球被电磁铁吸住,为OFF时被释放. 对于电磁吸盘这一类执行机构,在紧急停车时如
47、果切断它的电源,它吸住的铁磁物体会掉下来,可能造成事故,一般不允许这样处理。,系统设有手动、单周期、单步、连续和回原点5种工作方式,机械手在最上面、最左边且电磁铁线圈断电时,称为系统处于原点状态(或称初始状态)。在公用程序中,左限位开关X1、上限位开关X4的常开触点和表示电磁铁线圈断电的Y4的常闭触点的串联电路接通时,“原点条件”辅助继电器M5变为ON。,如果选择的是单周期工作方式,按下起动按钮X16后,从初始步M0开始,机械手按顺序功能图(右图)的规定完成一个周期的工作后,返回并停留在初始步。,如果选择连续工作方式,在初始状态按下起动按钮后,机械手从初始步开始一个周期一个周期地反复连续工作。
48、按下停止按钮,并不马上停止工作,完成最后一个周期的全部工作后,系统才返回并停留在初始步。,在单步工作方式,从初始步开始,按一下起动按钮,系统转换到下一步,完成该步的任务后,自动停止工作并停留在该步,再按一下起动按钮,才往前走一步。单步工作方式常用于系统的调试。 在选择单周期、连续和单步工作方式之前,系统应处于原点状态;如果不满足这一条件,可以选择回原点工作方式,然后按回原点起动按钮X15,使系统自动返回原点状态。在原点状态,顺序功能图中的初始步M0为ON,为进入单周期、连续和单步工作方式作好了准备。,使用起保停电路的编程方法l.公用程序 公用程序(下图)用于自动程序和手动程序相互切换的处理,当
49、系统处于手动工作方式时,必须将除初始步以外的各步对应的辅助继电器(M20M30)复位,否则当系统从自动工作方式切换到手动工作方式,然后又返回自动工作方式时,可能会出现同时有两个活动步的异常情况,引起错误的动作。,在非连续工作方式,用X14的常闭触点将表示连续工作的标志M7复位。,当机械手处于原点状态(M5 ON),在开始执行用户程序(M8002为ON)、系统处于手动状态或回原点状态(X10或X11为ON)时,初始步对应的M0将被置位,为进入单步、单周期和连续工作方式作好准备。如果此时M5为OFF状态,M0将被复位,初始步为不活动步,按起动按钮也不能转换到后续步M20,自动运行被禁止,系统不能在单步、单周期和连续工作方式工作。,