- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2013PLC第五章讲义
第五章 程序控制类指令 程序控制类指令用来决定程序执行的顺序和流程,在PLC指令系统中占用重要的地位。程序控制类指令包括结束指令、暂停指令、顺序控制继电器指令、跳转指令、循环指令、子程序调用指令等。 一、结束及停止指令 1、条件结束指令(END):执行条件成立(左侧逻辑值为1)时结束主程序,返回主程序的第一条指令执行,条件结束指令后的程序体将不被执行。 2. 停止指令 停止指令(STOP):执行条件成立,停止执行用户程序,使主机CPU的工作方式由RUN切换到STOP模式。 可用在主程序、子程序和中断程序中。 若在中断程序中执行STOP指令,该中断立即终止,并忽略全部等待执行的中断,继续执行主程序的剩余部分,并在主程序的结束处,完成从RUN方式到STOP方式的转换。 二、循环、跳转指令 1. 循环指令 FOR指令表示循环的开始,NEXT指令表示循环的结束。当驱动FOR指令的逻辑条件满足时,反复执行FOR和NEXT之间的程序。在FOR指令中,需要设置指针或当前循环次数计数器(INDX),初始值(INIT)和终值(FINAL)。 工作过程 使能输入EN有效,循环体开始执行,执行到NEXT指令时返回,每执行一次循环体,当前值计数器INDX加1,达到终止值FINAL时,循环结束。 使能输入无效时,循环体程序不执行。每次使能输入有效,指令自动将各参数复位。 FOR/NEXT指令必须成对使用,循环可以嵌套,最多为8层。 当I0.0为ON时,①所示的外循环执行2次,由VW100累计循环次数。当I0.1为ON时,外循环每执行一次,②所示的内循环执行3次, 且由VW110累计循环次数。 2、跳转指令 跳转指令包括:跳转指令JMP和标号指令LBL。当条件满足时,跳转指令JMP使程序转到对应的标号LBL处,标号指令用来表示跳转的目的地址。 JMP与LBL指令中的操作数n为常数0~255。JMP和对应的LBL指令必须在同一程序块中。 顺序功能流程图是按照顺序控制的思想,根据工艺过程和输出量的状态变化,将一个工作周期划分为若干顺序相连的步,在任何一步内,各输出量ON/OFF状态不变,但是相邻两步输出量的状态是不同的。所以,可以将程序的执行分成各个程序步,通常用顺序控制继电器的位S0.0~S31.7代表程序的状态步。 使系统由当前步进入下一步的信号称为转换条件,又称步进条件。转换条件可以是外部的输入信号,如按钮、指令开关、限位开关的接通/断开等,也可以是程序运行中产生的信号,如定时器、计数器的常开触点的接通等。转换条件还可能是若干个信号的逻辑运算的组合。 * 调试程序时,在程序的适当位置插入,可实现程序的分段调试。 图中当JMP条件满足(即I0.0为ON时)程序跳转执行LBL标号以后的指令,而在JMP和LBL之间的指令一概不执行,在这个过程中,即使I0.1接通也不会有Q0.1输出。当JMP条件不满足时,则当I0.1接通时Q0.1有输出。 如图所示的程序中,当I0.0接通一次,VB20、VB21的值等于多少? 三、顺序控制继电器指令 (一)SCR指令的功能 1、SCR程序段的S位置位时,允许该程序段工作; 2、SCRT指令一方面使当前激活的SCR程序段S位复位,以使该程序段停止工作,另一方面使下一个将要执行的SCR程序段S位置位; 3、SCRE指示一个SCR程序段结束。 (二)使用SCR指令的限制 只能使用顺序控制继电器位作为段标志位,同一地址的S位不可用于不同的程序分区;在一个SCR段中不能使用JMP、LBL、FOR、NEXT、END指令。 所谓顺序控制,是生产过程按工艺要求事先安排的顺序自动地进行控制。 (三)SCR指令的编程举例 根据舞台灯光效果的要求,控制红、绿、黄三色灯。要求:红灯先亮,2s后绿灯亮,再过3s后黄灯亮。待红、绿、黄灯全亮3min后,全部熄灭。程序如图5-29所示。 说明:每一个SCR程序段中均包含三个要素: 1)输出对象:在这一步序中应完成的动作; 2)转移条件:满足转移条件后,实现SCR段的转移; 3)转移目标:转移到下一个步序。 LD I0.1 AN Q0.0 AN Q0.1 AN Q0.2 //在初始状态下起动,置 S S0.1,1 //S0.1=1 LSCR S0.1 //S0.1=1,激活第一SCR程序段, //进入第一步序 LD SM0.0 S Q0.0,1 //红灯亮,并保持 TON T37,+20 //启动2s定时器 LD T37 //2s后程序转移到第二SCR段, SCRT S
文档评论(0)