网站大量收购独家精品文档,联系QQ:2885784924

5.2 程序控制指令(械穆修改).ppt

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.2 程序控制指令(械穆修改)

程序控制指令用于对程序流转的控制,可以控制程序的结束、分支、循环、子程序或中断程序调用等。通过程序控制指令的合理应用,可以使程序结构灵活、层次分明,增强程序功能。 ;5.2.1暂停、结束指令 5.2.2跳转指令 5.2.3循环指令FOR和NEXT 5.2.4子程序 ;1. 结束指令END/MEND 1) 指令格式、功能及其用法 END指令为有条件结束指令,MEND为无条件结束指令 ;I0.0闭合时,END指令运行,程序到此结束,返回主程序首地址重新开始执行。I0.0断开时,END指令不运行,程序继续向下运行,直到MEND指令结束。;2. STOP指令 1) 指令格式、功能及其用法 STOP为暂停指令,在执行条件成立时,能够使PLC的运行方式从运行状态(RUN)转为停止状态(STOP),同时立即终止程序的执行。;I0.0闭合时,STOP指令运行,PLC工作方式立即从运行转变为停止方式。I0.0为断开,则程序正常运行。; 2) 指令说明 (1) STOP指令在程序中常用于处理突发紧急事件,所以其执行条件必须严格选择,既不能干扰程序的正常运行,又要在出现问题时能够起到作用。可以同时并联多个触点作为其执行条件。 (2) STOP指令可以用在主程序、子程序和中断程序中。 (3) STOP指令无操作数。 ;WDR指令 1) 指令格式、功能及其用法 WDR为看门狗复位指令。为保证CPU系统可靠运行,PLC内部设置了系统监视定时器WDT(watch dog timer),用于监视扫描周期是否超时。系统正常工作时扫描周期会小于WDT的定时设置值(默认为500ms),在每个扫描周期内扫描到WDT时,系统都会对WDT复位一次,从而保证WDT不会报警。但当系统出现故障时,扫描周期有可能超过WDT的定时设置值,这时WDT不能在设置值范围内被复位,则报警并停止CPU运行,同时复位输入输出。 ; 但有时在程序正常运行情况下,由于程序过长或使用中断指令、循环指令会使扫描周期超过WDT定时器的设置值,为避免使监视定时器动作,就需要在程序中使用WDR指令人为复位WDT定时器。 WDR指令操作数;I0.0闭合时,WDR指令运行,复位系统监视定时器WDT。;有I/O错误时,该位置1。;1. JMP、LBL指令 1) 指令梯形图与指令表 ;其中N为0~255的常数。 2) 指令功能 JMP 跳转指令,在预置触发信号接通时,使程序跳转到N所指定的相应标号处。 LBL 标号指令,标记跳转的目的地的位置。由N来标记与哪个JMP指令对应。 ;3) 指令说明 (1) JMP和LBL指令必须成对使用于主程序、子程序或中断程序中。主程序、子程序或中断程序之间不允许相互跳转。若在步进程序中使用跳转指令,则必须使JMP和LBL指令在同一个SCR段中。 (2) 多条跳转指令可对应同一标号,但不允许一个跳转指令对应多个相同标号,即在程序中不能出现两个相同的标号。 ;1) 指令格式及操作数;2) 指令功能 FOR 标记循环程序的开始。 NEXT 标记循环程序的结束,无操作数。 ; FOR指令中: INDX指定当前循环计数器,用于记录循环次数; INIT指定循环次数的初值; FINAL指定循环次数的终值。 当EN端口执行条件存在时,开始执行循环体,当前循环计数器从INIT指定的初值开始,每执行1次循环体,当前循环计数器值增加1。当前循环计数器值大于FINAL指定的终值时,循环结束。 ;3) 指令说明 (1) FOR、NEXT指令必须成对使用。 (2) 初值大于终值时,循环指令不被执行。 (3) 每次EN端口执行条件存在时,自动复位各参数,同时将INIT指定初值放入当前循环计数器中,使循环指令可以重新执行。; SM0.1 此位在首次扫描周期接通。一个用途是调用初始化子例行程序。 当I0.0接通时,将INIT指定初值放入VW100中,开始执行循环体,VW100中的值从1增加到8,循环体执行8次,VW100中的值变为9(98)时,循环结束。;4) 循环指令可以进行嵌套编程,最多可嵌套8层,单个循环指令之间不能交叉。图所示为2层嵌套使用。; 子程序是结构化编程的有效工具,它可以把功能独立的,且需要多次使用的部分程序单独编写,供主程序调用。子程序能够使程序结构清晰、功能明确,并且简单易读。要使用子程序,首先要建立子程序,然后才能调用子程序。

文档评论(0)

ayangjiayu3 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档