程序控制指令(新修改)

上传人:油条 文档编号:1575195 上传时间:2017-06-26 格式:PPT 页数:33 大小:438.50KB
返回 下载 相关 举报
程序控制指令(新修改)_第1页
第1页 / 共33页
程序控制指令(新修改)_第2页
第2页 / 共33页
程序控制指令(新修改)_第3页
第3页 / 共33页
程序控制指令(新修改)_第4页
第4页 / 共33页
程序控制指令(新修改)_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《程序控制指令(新修改)》由会员分享,可在线阅读,更多相关《程序控制指令(新修改)(33页珍藏版)》请在金锄头文库上搜索。

1、程序控制指令用于对程序流转的控制,可以控制程序的结束、分支、循环、子程序或中断程序调用等。通过程序控制指令的合理应用,可以使程序结构灵活、层次分明,增强程序功能。,5.2 程序控制指令,5.2.1暂停、结束指令5.2.2跳转指令5.2.3循环指令FOR和NEXT5.2.4子程序,5.2 程序控制指令,1. 结束指令END/MEND 1) 指令格式、功能及其用法 END指令为有条件结束指令,MEND为无条件结束指令,END指令用于在执行条件成立时结束主程序,返回程序起点。 用Micro/Win32编程时,编程人员不需手工输入MEND指令,而是由软件自动加在主程序结尾。用于标志主程序的结束。,5.

2、2.1暂停、结束指令,I0.0闭合时,END指令运行,程序到此结束,返回主程序首地址重新开始执行。I0.0断开时,END指令不运行,程序继续向下运行,直到MEND指令结束。,2) 指令说明 (1) 两条指令均为无操作数指令。 (2) 结束指令只能用于主程序中,不能在子程序和中断程序中使用。有条件结束指令可用在无条件结束指令前结束主程序。,2. STOP指令 1) 指令格式、功能及其用法 STOP为暂停指令,在执行条件成立时,能够使PLC的运行方式从运行状态(RUN)转为停止状态(STOP),同时立即终止程序的执行。,STOP指令操作数,I0.0闭合时,STOP指令运行,PLC工作方式立即从运行

3、转变为停止方式。I0.0为断开,则程序正常运行。,2) 指令说明 (1) STOP指令在程序中常用于处理突发紧急事件,所以其执行条件必须严格选择,既不能干扰程序的正常运行,又要在出现问题时能够起到作用。可以同时并联多个触点作为其执行条件。 (2) STOP指令可以用在主程序、子程序和中断程序中。 (3) STOP指令无操作数。,WDR指令 1) 指令格式、功能及其用法 WDR为看门狗复位指令。为保证CPU系统可靠运行,PLC内部设置了系统监视定时器WDT(watch dog timer),用于监视扫描周期是否超时。系统正常工作时扫描周期会小于WDT的定时设置值(默认为500ms),在每个扫描周

4、期内扫描到WDT时,系统都会对WDT复位一次,从而保证WDT不会报警。但当系统出现故障时,扫描周期有可能超过WDT的定时设置值,这时WDT不能在设置值范围内被复位,则报警并停止CPU运行,同时复位输入输出。,但有时在程序正常运行情况下,由于程序过长或使用中断指令、循环指令会使扫描周期超过WDT定时器的设置值,为避免使监视定时器动作,就需要在程序中使用WDR指令人为复位WDT定时器。 WDR指令操作数,I0.0闭合时,WDR指令运行,复位系统监视定时器WDT。,有I/O错误时,该位置1。,运行过程中发现编程问题时,该位置1。,1. JMP、LBL指令 1) 指令梯形图与指令表,5.2.2 跳转指

5、令,其中N为0255的常数。2) 指令功能JMP 跳转指令,在预置触发信号接通时,使程序跳转到N所指定的相应标号处。LBL 标号指令,标记跳转的目的地的位置。由N来标记与哪个JMP指令对应。,3) 指令说明 (1) JMP和LBL指令必须成对使用于主程序、子程序或中断程序中。主程序、子程序或中断程序之间不允许相互跳转。若在步进程序中使用跳转指令,则必须使JMP和LBL指令在同一个SCR段中。 (2) 多条跳转指令可对应同一标号,但不允许一个跳转指令对应多个相同标号,即在程序中不能出现两个相同的标号。,1) 指令格式及操作数,5.2.3 循环指令FOR和NEXT,FOR、NEXT指令的基本格式,

6、2) 指令功能FOR 标记循环程序的开始。NEXT 标记循环程序的结束,无操作数。,FOR指令中: INDX指定当前循环计数器,用于记录循环次数; INIT指定循环次数的初值; FINAL指定循环次数的终值。当EN端口执行条件存在时,开始执行循环体,当前循环计数器从INIT指定的初值开始,每执行1次循环体,当前循环计数器值增加1。当前循环计数器值大于FINAL指定的终值时,循环结束。,3) 指令说明 (1) FOR、NEXT指令必须成对使用。 (2) 初值大于终值时,循环指令不被执行。 (3) 每次EN端口执行条件存在时,自动复位各参数,同时将INIT指定初值放入当前循环计数器中,使循环指令可

7、以重新执行。,SM0.1 此位在首次扫描周期接通。一个用途是调用初始化子例行程序。当I0.0接通时,将INIT指定初值放入VW100中,开始执行循环体,VW100中的值从1增加到8,循环体执行8次,VW100中的值变为9(98)时,循环结束。,4) 循环指令可以进行嵌套编程,最多可嵌套8层,单个循环指令之间不能交叉。图所示为2层嵌套使用。,子程序是结构化编程的有效工具,它可以把功能独立的,且需要多次使用的部分程序单独编写,供主程序调用。子程序能够使程序结构清晰、功能明确,并且简单易读。要使用子程序,首先要建立子程序,然后才能调用子程序。 1. 建立子程序 可以选择编程软件“编辑”菜单中的“插入

8、”子菜单下的“子程序”命令来建立一个新的子程序。默认的子程序名为SBR_N,编号N的范围为063,从0开始按顺序递增,也可以通过重命名命令为子程序改名。,5.2.4 子程序,2. 子程序调用:CALL、CRET指令 1) 指令梯形图与指令表格式,2) 指令功能 CALL 子程序调用指令,当EN端口执行条件存在时,将主程序转到子程序入口开始执行子程序。SBR_N是子程序名,标志子程序入口地址。CRET 有条件子程序返回指令,在其逻辑条件成立时,结束子程序执行,返回主程序中的子程序调用处继续向下执行。,主程序,子程序,3) 带参数的子程序调用 可以带参数调用子程序,这种方式扩大了子程序的使用范围,

9、增加了调用的灵活性。,带参数的子程序调用格式,练习与思考,1.S7-200系列共有几种类型的定时器,各自有什么特点?S7-200系列PLC有几种分辨率的定时器?2.S7-200系列有几种形式的计数器,各有什么特点?3.指出图中的错误(P124中图5-43)。4. 对锅炉鼓风机和引风机控制要求如下:(1)开机时首先启动引风机,12S后自动启动鼓风机。(2)停止时,立即关断鼓风机,经过23S后自动关断引风机。试统计输入信号、输出信号并进行端口的分配,设计相关的梯形图程序,画出时序图。,5.设计一个照明灯的控制程序。当按下接在I0.0上的按钮后,接在Q0.0上的照明灯可以发光36S,如果在这段时间内又有人按下按钮,则时间间隔从头开始,这样可以确保最后一次按完按钮后,灯光可以持续36S的照明。,6.某机车主轴和润滑泵分别由各自的笼型电机拖动,且都采用直接启动。控制要求:(1)主轴必须在润滑泵启动之后才可以启动。(2)主轴连续运转时为正向运行,但还可以进行正、反向点动。(3)主轴先停车后,润滑泵才可以停。试统计输入信号,输出信号并进行端口的分配,设计相关的梯形图。,第4题,第5题,程序1,程序2,二者时序图有什么区别?,第6题,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 电子/通信 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号