第4章应用指令课件.ppt

上传人:牧羊曲112 文档编号:1623065 上传时间:2022-12-11 格式:PPT 页数:42 大小:3.56MB
返回 下载 相关 举报
第4章应用指令课件.ppt_第1页
第1页 / 共42页
第4章应用指令课件.ppt_第2页
第2页 / 共42页
第4章应用指令课件.ppt_第3页
第3页 / 共42页
第4章应用指令课件.ppt_第4页
第4页 / 共42页
第4章应用指令课件.ppt_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《第4章应用指令课件.ppt》由会员分享,可在线阅读,更多相关《第4章应用指令课件.ppt(42页珍藏版)》请在三一办公上搜索。

1、第4章应用指令,4.1 程序控制类指令4.2特殊指令,4.1 程序控制类指令,4.1.1结束及暂停指令4.1.2看门狗指令4.1.3跳转指令 4.1.4子程序指令 4.1.5程序循环指令4.1.6顺序控制继电器指令4.1.7与ENO指令,返回本章首页,第4章应用指令,4.1.1有条件结束指令,梯形图:语句表: END 功能:当前面的逻辑条件成立时终止当前扫描周期。举例:,结束指令分为:有条件结束指令(END)和无条件结束指令(MEND)。END指令在梯形图中以线圈形式编程,指令不含操作数。END指令功能:指令根据前面的逻辑条件终止用户主程序(只能用于主程序)。,编程人员不需手工输入MEND指令

2、,而是由软件自动加在主程序结尾。返回主程序的第一条指令。,暂停指令,STOP,暂停指令。指令在梯形图中以线圈形式编程,指令不含操作数。暂停指令能够引起CPU工作方式发生变化,从RUN(运行)模式转换为STOP(暂停)模式,立即终止程序的执行。STOP指令可以用在主程序、子程序和中断程序中。如果在中断程序中执行STOP(暂停)指令,中断程序立即终止,并忽略全部待执行的中断,继续扫描主程序的剩余部分。在本次扫描结束后,CPU从RUN(运行)模式转换至STOP(暂停)模式。 STOP和END指令通常在程序中对突发紧急事件进行处理,以避免实际生产中的重大损失。,梯形图:语句表: STOP 功能:能够引

3、起CPU工作方式从RUN进入STOP,立即终止程序的执行。举例:,在本例中,SM5.0为I/O错误继电器,当出现I/O错误时,SM5.0=1,此时会强迫CPU进入停止方式。,4.1.2看门狗,WDR,看门狗复位指令。当使能输入有效时,执行WDR指令,每执行一次,看门狗定时器就被复位一次。S7的看门狗WDR的设定值为300ms,有时在循环或调用子程序,响应中断服务程序时,扫描时间超过300ms, WDR会认为出错。可用本指令可用以延长扫描周期,从而可以有效避免看门狗超时错误。指令格式:WDR(无操作数),系统故障情况下,扫描时间大于WDT设定值,该定时器不能及时复位,则报警并停止CPU运行,同时

4、复位输入、输出。这种故障称为WDT故障,以防止因系统故障或程序进入死循环而引起的扫描周期过长。,梯形图:,图4.1停止、结束、看门狗指令,返回本节,4.1.3跳转,梯形图:,编写子程序的步骤1 .建立子程序2. 编写子程序3.在主程序、其他子程序、或中断程序中调用子程序(带参数的子程序)和子程序返回指令,4.1.4子程序指令,1.建立子程序,可采用下列方式创建子程序:打开程序编辑器,在“编辑”菜单中执行命令“插入”“子程序”;在程序编辑器视窗中单击鼠标右键,在弹出菜单中执行命令“插入”“子程序”;用鼠标右键单击指令树上的“程序块”图标,在弹出菜单中执行命令“插入”“子程序”,程序编辑器将自动生

5、成并打开新的子程序,在程序编辑器底部出现标有新的子程序的标签。,2. 子程序调用,(1)子程序调用和返回指令 子程序调用 子程序条件返回(2)注意事项可有64个子程序,可以嵌套子程序,最大嵌套深度为8子程序内不能用END指令不允许直接递归(自己调用自己),可间接递归 (3)应用实例,图4.3所示的程序实现用外部控制条件分别调用两个子程序。,图4.3 子程序调用举例,(1)子程序参数-最多可带16个参数,每个参数包含: 变量名 变量类型 (IN类型、IN/OUT、OUT)数据类型 (位、字节、字、双字、实型)(2)参数子程序调用的规则参数与局部变量表的定义相匹配参数顺序是:输入,输入/输出,输出

6、(3)程序实例,3. 带参数的子程序调用,图4.5 带参数的子程序调用,返回本节,4.1.5程序循环,1.循环开始FOR每执行一次循环计数值加1,当计数值大于终值,则循环终止。2.循环结束 NEXT3. 程序实例,计数值初值终值,循环指令使用说明:, FOR、NEXT指令必须成对使用; FOR和NEXT可以循环嵌套,嵌套最多为8层,但各个嵌套之间不可有交叉现象; 每次使能输入(EN)重新有效时,指令将自动复位各参数; 初值大于终值时,循环体不被执行。,循环指令,循环指令,循环指令的使用举例,在本例中,为2层循环嵌套,循环体为VW300中的数值自加1。当2层循环条件同时满足,程序执行后,VW30

7、0中的数值加了200个1。,4.1.7顺序控制继电器 (p162),顺序控制继电器S是专门用于编写顺序控制程序(常称为步进控制)的。所谓顺序控制,使生产过程按生产工艺的要求预先安排的顺序自动地进行生产的控制方式。一个步进控制程序是由若干个SCR段组成,每个SCR段对应步进控制中的一个功能控制步。,1. 顺序继电器指令(1)段开始指令功能:标记一个SCR段的开始,操作数是顺序继电器Sx.y(如S0.0)。当顺序继电器Sx.y=1启动SCR x.y的顺序程序。即允许该SCR段工作。(2)段转移功能:是当Sx.y=1,将当前的SCR段停止,切换到下一个SCR。其操作数为下一个SCR的标志位(如S0.

8、1)(3)段结束功能:标记一个段的结束。,Sn,4.1.7 顺序控制继电器指令,顺序结构程序实例,根据舞台灯光效果的要求,控制红、绿、黄三色灯。要求:红灯先亮,2s后绿灯亮,再过3s后黄灯亮。待红、绿、黄灯全亮3min后,全部熄灭。程序如图4-29所示。说明:每一个SCR程序段中均包含三个要素:1)输出对象:在这一步序中应完成的动作;2)转移条件:满足转移条件后,实现SCR段的转移;3)转移目标:转移到下一个步序。,程序实例,根据舞台灯光效果的要求,控制红、绿、黄三色灯。要求:红灯先亮,2s后绿灯亮,再过3s后黄灯亮。待红、绿、黄灯全亮3min后,全部熄灭。程序如下图所示。分析:控制可分四步1

9、)按启动按钮-灯都不亮时,红灯亮2s-T37;2)时间到 T37=1-绿灯亮3s- T38;3)时间到 T38=1-黄灯亮3min- T394)时间到 T39=1-灯全灭,LD I0.1AN Q0.0AN Q0.1AN Q0.2 /在初始状态下起动,置S S0.1,1 /S0.1=1LSCR S0.1 /S0.1=1,激活第一SCR程序段, /进入第一步序LD SM0.0S Q0.0,1 /红灯亮,并保持TON T37,+20 /启动2s定时器LD T37 /2s后程序转移到第二SCR段,SCRT S0.2 /(S0.2=1,S0.1=0)SCRE / 第一SCR段结束LSCR S0.2 /S

10、0.2=1,激活第二SCR程序段, /进入第二步序LD SM0.0S Q1.1 /绿灯亮,并保持TON T38,+30 /启动3s定时器,LD I0.1,LD T38 /3s后程序转移到第三SCR段,SCRT S0.3 /(S0.3=1,S0.2=0)SCRE /第二SCR段结束LSCR S0.3 /S0.3=1,激活第三SCR程序段, /进入第三步序LD SM0.0S Q0.2,1 /黄灯亮,并保持TON T39,+1800 /启动3min定时器LD T39 /3min后程序转移到第四SCR段,SCRT S0.4 /(S0.4=1,S0.3=0)SCRE /第三SCR段结束LSCR S0.4

11、 /S0.4=1,激活第四SCR程序段, /进入第四步序LD SM0.0R S0.1,4R Q0.0,3 /红、绿、黄灯全灭SCRE /第四SCR段结束,图4-29 SCR指令编程,返回,4.1.8与ENO指令,AENO,与ENO指令。ENO是梯形图和功能框图编程时指令盒的布尔能流输出端。如果指令盒的能流输入有效,同时执行没有错误,ENO就置位,将能流向下传递。当用梯形图编程时,且指令盒后串联一个指令盒或线圈,语句表语言中用AENO指令描述。 指令格式:AENO(无操作数),图4.13与ENO指令,AENO指令只能在语句表中使用,将栈顶值和ENO位的逻辑与运算,运算结果保存到栈顶。程序如图4.

12、13所示。,返回本节,4.2.1 中断,1. 中断源(1)中断源及种类中断源,即中断事件发出中断请求的来源。S7-200可编程序控制器具有34个中断源,每个中断源都分配一个编号用以识别,称为中断事件号。这些中断源大致分为三大类:通信中断、输入输出中断和时基中断。,4.2特殊指令,(2)中断优先级 中断优先级由高到低依次是:通信中断、输入输出中断、时基中断。每种中断中的不同中断事件又有不同的优先权。主机中的所有中断事件及优先级如表4.2所示。,表4.2中断事件及优先级,2. 中断操作指令包括:(1)开中断指令ENI-全局开放所有被连接的中断事件(2)关中断指令DISI-全局关断所有被连接的中断事

13、件(3)中断连接指令ATCH功能:建立一个中断事件EVNT与一个标号为INTn中断服务程序联系,并对该中断事件开放。,(4)中断分离指令DTCH功能:取消某个中断事件EVNT与所有中断程序的关联,并对该事件关中断。(5)中断返回指令RETI和CRET注意事项 中断服务程序中,不能使用开中断指令ENI、关中断指令DISI、定义高速计数器指令HDEF、步进开始指令LSCR、条件结束指令END。程序实例,有条件返回,无条件返回,(3)程序实例控制要求:程序实现的功能是用I0.4开放I0.1输入点的上升沿中断,若发现I/O错误,则禁止本中断,用外部条件I0.5可以禁止全局中断。程序实现:本程序如图4.

14、10所示。,图4.10中断调用程序,3. 中断程序(1)构成中断程序必须由三部分构成:中断程序标号、中断程序指令和无条件返回指令。(2)编制方法建立中断程序INT n在INT n中编写其服务程序编写中断连接指令允许中断,返回本节,模拟量数据采集和显示实例,温度检测系统,测温元件热电阻Pt100测温范围0200度(电流型),用EM235模块,测量并显示。分析:0200度 对应 420mA 数字量想知道实际温度对应的数字量和模拟量如何求?,32000,(32000/20)*4=6400,测量的实际温度=(AIW0-6400)(200-0)/(32000-6400)+0,数据采集:应确定采样周期,依据香农定理需要定时采样模拟量的输入。可以采用定时中断-中断服务程序里进行采集数据和换算用定时中断0, SM34 ,设定100ms主程序完成初始化和显示任务见程序,定时中断0,设定100ms,在中断服务程序中进行数据采集和变换,温度模拟量数据采集实例0200度范围,测量的实际温度=(AIW-6400)/(32000-6400)/200,6400,128,结 束,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号