台达-plc-课件第6章-编程原理

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

可编程控制器应用技术ApplicationTechnologyofProgrammableLogicController张希川高级工程师沈阳工业大学材料科学与工程学院第6章顺序功能图语言的编程原理6.1顺序功能图的概念6.2顺序功能图的基本图标和指令6.3步进梯形的动作说明6.4步进梯形图的流程分类6.5步进梯形图的应用第6章顺序功能图语言的编程原理6.1顺序功能图的概念对于经常的状态步进动作不须做顺序设计,PLC会自动执行各状态间的互锁及双重输出等处理。只要针对各状态做简单的顺序设计即可使机械正常动作。动作易了解,可轻易作试运行调整,检查错误及维护保养的工作。SFC的编辑原理属于图形编辑模式,整个架构看起来像流程图,它是利用PLC内部的步进继电器装置S,每一个步进继电器装置S的编号就当做一个步进点,也相当于流程图的各个处理步骤,当前步骤处理完毕后,再依据所设定的条件转移到所要求的下一步骤,即下一个步进点S,如此可以一直重复循环达到所要的结果。图6.1给出了SFC的编程原理图。程序开始执行后,状态转移条件1满足时,程序进入第1步,完成动作1;状态转移条件2满足时,程序进入第2步,完成动作2和动作3;以此类推,当程序进入第4步,完成动作5后,若状态转移条件5满足,则程序回到初始点,这样就完成了一次完整的流程,可以一直重复达到循环的控制。第6章顺序功能图语言的编程原理6.2顺序功能图的基本图标和指令6.2.1顺序功能图的基本图标顺序功能图因为是按先后步序执行的,也是图形编程语言,还与一般梯形图密不可分,所以有时也叫步进梯形图。表6.1给出了顺序功能图的基本图标。第6章顺序功能图语言的编程原理6.2顺序功能图的基本图标和指令6.2.1顺序功能图的基本图标第6章顺序功能图语言的编程原理6.2顺序功能图的基本图标和指令6.2.2步进梯形开始指令STL步进梯形开始指令STLSn构成一个步进点,当STL指令出现在程序中,代表程序进入以步进流程控制的步进梯形图状态。用STL指令做顺序功能图设计语法的指令,可以让程序设计人员在程序规划时,能够像平时画流程图一样,对于程序的步序更为清楚,更具可读性。第6章顺序功能图语言的编程原理6.2顺序功能图的基本图标和指令6.2.3步进梯形结束指令RET第6章顺序功能图语言的编程原理6.2顺序功能图的基本图标和指令6.2.3步进梯形结束指令RET步进梯形结束指令RET代表一个步进流程的结束,所以一连串步进点的最后一定要有RET指令。一个程序可带有多个步进流程,每一个步进流程结束时,一定要写入RET指令,RET指令的使用次数没有限制,搭配初始步进点(S0~S9)使用。若步进流程结束而没有写入RET指令,则WPL编译器会检查出错误。在PLC程序中,步进梯形的初始状态必须由S0~S9开始,最多可写入S0~S9共10个步进流程,而每一个步进流程都要通过STL指令进入,结束时要使用RET指令。SFC图就是利用STL指令和RET指令组成的步进梯形图完成控制动作,其中步进点S编号不能重复。图6.2给出了STL和RET指令的应用。在图6.2中,PLC开始运行后,内部辅助继电器M1002会产生1个上升沿触发脉冲,执行ZRST指令,将S0至S127复位清零,然后再执行SET指令,将S0置位,进入初始步进点;当X0=On时,执行SET指令将S20置位,进入步进点S20,Y0线圈接通;然后,当X1=On时,执行SET指令将S30置位,进入步进点S30,Y1线圈接通,Y0线圈断开;而后,当X2=On时,执行SET指令将S40置位,进入步进点S40,Y2线圈接通,Y1线圈断开;再后,然后,当X3=On时,由OUT指令将S0置位,由RET指令返回初始步进点S0,Y2线圈断开;这样就完成了一次循环。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.1步进梯形动作步进梯形是由很多个步进点组成,每一个步进点代表控制流程的一个动作,一个步进点必须执行三个任务:a)驱动输出线圈;b)指定转移条件;c)指定控制权转移的下一步进点。图6.3给出了步进梯形动作实例。当S10=On时,Y0直接为On,Y由SET指令置位On;之后当X0=On时,S20=On、Y10直接为On,而S10变为Off,Y0随之为Off、Y1使用SET指令仍未为On;X1=On时,S30=On,S20又为Off。此例中,S10、S20及S30为步进点,对于步进点S10而言,Y0和Y1为输出线圈,X0为转移条件,S20为控制权转移的下一步进点;对于步进点S20而言,Y10为输出线圈,X1为转移条件,S20为控制权转移的下一步进点。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.2步进梯形动作时序图当状态接点Sn=On时,则电路动作,Sn=Off时,电路不动作。以上动作会延迟1个扫描时间执行。图6.4给出了步进梯形动作时序图实例。在状态转移的过程中,S10=Off与S12=On同时发生,但程序要延迟1个扫描时间执行Y10=Off、Y11=On,这样不会有重叠输出的现象。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.3输出线圈的重复使用在步进梯形图不同的步进点中,可使用同号的输出线圈,而一般梯形图中应避免输出线圈的重复使用。在步进点所使用的输出线圈号码,最好在步进梯形图回到一般梯形图后,也避免使用。以图6.5为例,不同状态之间可以使用同一输出装置,即S10和S20中都用到了Y0,无论S10还是S20为On时,Y0都会为On。在状态步进点由S10转移至S20的转移过程中,会将Y0关闭,最终S20=On之后再将Y0输出。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.4定时器的重复使用ES/EX/SS系列机型的定时器可在不同的步进点中重复使用,但与一般的输出点不同的是,仅可在不相邻的步进点中重复使用。这是步进梯形图的特点之一,但在一般梯形图当中最好避免这样的重复使用。图6.6给出了定时器的重复使用实例。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.5步进点的转移指令SETSn及OUTSn都是用来启动(或称转移至)下一个步进点,当控制权移动到下一个步进点后,原步进点S的状态及其输出点的动作都会被清除。由于程序中可以同时存在有多个步进控制流程,分别以S0~S9为启始所引导的步进梯形图,步进的转移可以在同一步进流程,也可能转移至不同的步进流程,因此步进点转移指令SETSn及OUTSn在用法上有些许差异。SETSn指令是在同一流程中,用来驱动下一个状态步进点,状态转移后,前一个步进点的所有输出都会被清除。如图6.4中的SET12,当S10=On时,Y0为On,若X0由Off变为On,则程序由步进点S10进入S12,Y10变为Off,Y11变为On。OUTSn指令可以实现在同一流程中返回初始步进点,也可以实现在同一流程中的步进点向上或向下非相邻步进点跳转,还可以实现在不同流程用来驱动分离步进点。状态转移后,之前所有动作状态点的所有输出都会被清除。图6.7和图6.8给出了OUTSn指令的应用实例。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.5步进点的转移图6.7中,只有S0一个步进流程,当程序执行到步进点S24时,触点X7可以通过OUTS0指令,使程序返回初始步进点S0。这样就实现了应用OUTSn指令在同一流程中返回初始步进点。此外,当程序执行到步进点S21时,触点X2可以通过OUTS23指令,使程序跳转到步进点S23。这样就实现了应用OUTSn指令在同一流程中向上或向下非相邻步进点的跳转。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.5步进点的转移图6.8中,S0和S1是2个独立的步进流程,程序可以由S0中的触点X2,通过OUTS33指令转移到S1中的步进点S33,这样就实现了在不同流程中驱动分离步进点。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.6输出点驱动的限制如图6.9(a),在步进点之后,新母线开始第二行一旦写入LD或LDI指令(图中的LDX0)后,就不能再从新母线直接连接输出线圈(图中的Y2),梯形图编译会产生错误。这时必须修改成如图6.9(b)才可正确编译。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.7一些指令使用的限制每一步进点中程序与一般的梯形图相同,可使用各种串并联回路或应用指令,但有一些指令使用有限制,见表6.2。步进点内不可使用MC/MCR指令。STL指令不可使用于一般子程序内或中断服务子程序内,但可使用CJ指令,而这样会使动作更加复杂,应尽量避免。步进点后必须有LD或LDI指令,然后再接MPS/MRD/MPP指令,如图6.10所示。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.8RET指令的正确使用在1个步进梯形程序完成之后,必须加上RET指令。而RET指令必须直接加在STL指令的后面。如图6.11(a)所示,这是错误的用法,必须改成图6.11(b)的情况。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.9其他注意事项1SFC最前头的步进点称为初始步进点,标号必须为S0~S9之一。使用初始步进点做为流程的开始,以RET指令结束,才能构成一个完整的步进流程。2当程序中没有步进流成,即没有用到STL指令时,步进点S可当成一般辅助继电器来使用。3当STL指令使用时,步进点S的编号不可重复使用。4步进流程的分类:根据整个程序中的数量,步进流程可分为单流程和多流程。单流程:一个程序中只有一个流程。多流程:一个程序中有多个单流程,最多可有S0~S9共10个流程。其中单流程又可分为含选择分支、选择汇合、并行分支、并行汇合的单流程。5流程的分离:若程序中有S0、S1两个单流程,应按顺序先写入S0,再写入S1。流程中的某一步进点可指定跳转到其他流程的任一个步进点,如图6.8,S21下方的条件成立(X2=On)时,程序跳转至S1流程中的S33步进点,此动作称为分离步进点。第6章顺序功能图语言的编程原理6.3步进梯形的动作说明6.3.9其他注意事项6步进点的复归:可以利用ZRST指令可将一段步进点重置(Reset)为Off。7停电保持步进点:停电保持步进点在PLC断电时,On/Off状态会全部会被记忆,再通电时,会保持断电前状态继续往下执行。使用时,须注意停电保持步进点的区域。8特殊辅助继电器与特殊寄存器,详细说明请参考相关手册。第6章顺序功能图语言的编程原理6.4步进梯形图的流程分类6.4.1单流程与多流程单流程:一个程序中只有一个流程,如图6.12所示,此程序中只有S0一个流程。多流程:一个程序中有多个单流程,最多可有S0~S9共10个流程,如图6.13所示,此程序中有S0、S1及S2三个流程,流程中的某一步进点可指定跳转到其他流程的任一个步进点,如S0中的S21步进点可由触点X0跳转到S1中的S33步进点,S1中的S33步进点可由触点X1跳转到S2中的S41步进点。第6章顺序功能图语言的编程原理6.4步进梯形图的流程分类6.4.2选择分支与选择汇合结构1选择分支结构由当前步进状态在个别条件成立时,转移至个别状态时,属于选择分支结构。如图6.14所示,当前步进状态是S10,当X0=On时,转移到S20,当X1=On时,转移到S30,当X2=On时,转移到S34。第6章顺序功能图语言的编程原理6.4步进梯形图的流程分类6.4.2选择分支与选择汇合结构2选择汇合结构由几个步进状态在个别条件成立时,都能转移至同一个步进状态时,属于选择汇合结构。如图6.15所示,S40、S41及S42三个步进状态的输入信号X0、X1及X2只要有一个成立,程序就转移至S50。第6章顺序功能图语言的编程原理6.4步进梯形图的流程分类6.4.3并行分支与并行汇合结构1并行分支结构由当前步进状态在条件成立时,同时转移至多个步进状态时,属于并行分支结构,如图6.16所示,若当前状态是S20,当X0=On时,同时转移到S21,S22,S23,S

1 / 34
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功